[英]php curl nginx proxy forward load time
我正在使用带有nginx的php curl作为代理。 这是我的代码:
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL,$url);
curl_setopt($ch, CURLOPT_PROXY, $proxy);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
$curl_scraped_page = curl_exec($ch);
curl_close($ch);
echo $curl_scraped_page;
我将这个简单的脚本放在生产服务器上,并针对某些URL运行。
我使用以下命令对其进行了测试:
time wget -pq --no-cache --delete-after www.growingcraft.com
URL通过代理的加载时间约为3.1秒,而没有代理的相同代码的加载时间(即注释掉“ curl_setopt($ ch,CURLOPT_PROXY,$ proxy);”行)大约需要1.1秒。
服务器由机架空间托管,使用最大大小(即CPU 8 vCPU,RAM 30 GB,系统磁盘1.2 TB,网络1.2 Gb / s,磁盘I / O良好)和最小大小时,我得到相同的结果
没有其他的运行/使用代理服务器。
我的问题是:
10倍
代理服务器总是会添加一点延迟2.2秒,这还不错,这是因为您使用的是“第二台”服务器向第一台服务器请求内容,然后将其重定向到用户。 如果您可以使代码更轻量或使服务器更强大,但现在还算不错,则可以减少这种情况。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.