有没有办法加快cURL

时间:2018-06-16 13:52:01

标签: php curl php-curl

我想知道是否有办法通过PHP加速这样的cURL请求。

<?php
$ch = curl_init();

curl_setopt($ch, CURLOPT_URL, 'https://www.randomsite.com/path');
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_IPRESOLVE, CURL_IPRESOLVE_V4);
curl_setopt($ch, CURLOPT_USERAGENT, 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/67.0.3396.79 Safari/537.36');
$html = trim(curl_exec($ch));

echo $html;

curl_close($ch);
?>

我循环了几百次这需要很长时间,因此我想知道是否有办法加快这个过程。

1 个答案:

答案 0 :(得分:2)

是的,你可以做的第一件事就是启用压缩,如果你从压缩中获取的内容受益(这不包括jpg / png / gif /任何预压缩,但是像html / css / javascript这样的东西/ xml受益于传输压缩) - 将CURLOPT_ENCODING设置为emptystring以使curl自动处理传输压缩。

I'm looping this a few hundred times and it's taking pretty long - 除非你因为某些原因不能同时获取它们,只需使用curl_multi api,然后你可以同时获取数百个,应该显着比使用curl_exec方法更快(只能连续获取)