溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點(diǎn)擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

php curl中g(shù)zip的壓縮性能測試的示例分析

發(fā)布時(shí)間:2021-09-01 10:20:09 來源:億速云 閱讀:191 作者:小新 欄目:開發(fā)技術(shù)

這篇文章主要介紹php curl中g(shù)zip的壓縮性能測試的示例分析,文中介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們一定要看完!

具體如下:

前因:

請求接口次數(shù)很多,每日兩億多次,主要是有些接口返回?cái)?shù)據(jù)量很大高達(dá)110KB(為了減少請求次數(shù),將多個(gè)接口合并成一個(gè)導(dǎo)致的)。

后端接口的nginx已經(jīng)開啟gzip,所以做個(gè)測試,看看是否在請求時(shí)使用壓縮解壓

php CURL 的擴(kuò)展安裝這里就不說了

用到的curl的兩個(gè)參數(shù)

//在http 請求頭加入 gzip壓縮
curl_setopt($ch, CURLOPT_HTTPHEADER, array('Accept-Encoding:gzip'));
//curl返回的結(jié)果,采用gzip解壓
curl_setopt($ch, CURLOPT_ENCODING, "gzip");

1、不使用壓縮解壓

$s1 = microtime(true);
$ch = curl_init();
for($i=0; $i<100;$i++){
  $url="http://192.168.0.11:8080/xxxxx/xxxxx?";
  curl_setopt($ch, CURLOPT_URL, $url);
  curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
  curl_setopt($ch, CURLOPT_TIMEOUT, 3);
  $data = curl_exec($ch);
}
curl_close($ch);
echo microtime(true)-$s1;
echo "\n";

測試結(jié)果:

請求100次平均耗時(shí) 2.1s   0.021s/次

2、使用壓縮解壓

$s1 = microtime(true);
$ch = curl_init();
for($i=0; $i<100;$i++){
  $url="http://192.168.0.1:8080/xxxxx/xxxxx?";
  curl_setopt($ch, CURLOPT_URL, $url);
  curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
  curl_setopt($ch, CURLOPT_TIMEOUT, 3);
  curl_setopt($ch, CURLOPT_HTTPHEADER, array('Accept-Encoding:gzip'));
  curl_setopt($ch, CURLOPT_ENCODING, "gzip");
  $data = curl_exec($ch);
}
curl_close($ch);
echo microtime(true)-$s1;
echo "\n";

測試結(jié)果:

請求100次平均耗時(shí) 2.6s   0.026/次

結(jié)果分析:

1、不使用壓縮比使用壓縮 請求一次快 5ms

2、千兆網(wǎng),在局域網(wǎng)內(nèi)傳輸這些數(shù)據(jù)大概是 0.7ms

結(jié)論:

暫時(shí)不使用 curl 的壓縮和解壓

以上是“php curl中g(shù)zip的壓縮性能測試的示例分析”這篇文章的所有內(nèi)容,感謝各位的閱讀!希望分享的內(nèi)容對大家有幫助,更多相關(guān)知識,歡迎關(guān)注億速云行業(yè)資訊頻道!

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI