多卷曲不能与不同的代理异步工作
multi curl does not work asynch with different proxies
所以我在这段代码中使用了 parallelcurl 库,但我尝试了其他包装器,结果几乎相同,也就是说,如果我指定一个代理
这些请求不是异步处理的,而是顺序处理的,只要我不指定代理选项,它就会像在异步中一样工作……为什么?我必须补充一点,我正在使用 hhvm 但似乎没有问题...
$timeout = 2;
$opt_arr = array(
CURLOPT_FOLLOWLOCATION => 1,
CURLOPT_RETURNTRANSFER => 1,
CURLOPT_HEADER => 1
CURLOPT_CONNECTTIMEOUT => $timeout
);
$parallelcurl = new ParallelCurl(200, $opt_arr);
foreach($proxies as $proxy){
$opt_arr[CURLOPT_PROXY] = $proxy;
$parallelcurl->setOptions($opt_arr);
$parallelcurl->startRequest($url, 'callback_p', array('proxy'=> $proxy));
}
$parallelcurl->finishAllRequests();
所以问题不在 php 或 curl 中,但在测试 url 中,我对此完全有狭隘的看法,自从我成为针对 google 测试它们,因此看起来 google 硬上限请求在 17 个线程,之后它抛出拒绝
所以我在这段代码中使用了 parallelcurl 库,但我尝试了其他包装器,结果几乎相同,也就是说,如果我指定一个代理 这些请求不是异步处理的,而是顺序处理的,只要我不指定代理选项,它就会像在异步中一样工作……为什么?我必须补充一点,我正在使用 hhvm 但似乎没有问题...
$timeout = 2;
$opt_arr = array(
CURLOPT_FOLLOWLOCATION => 1,
CURLOPT_RETURNTRANSFER => 1,
CURLOPT_HEADER => 1
CURLOPT_CONNECTTIMEOUT => $timeout
);
$parallelcurl = new ParallelCurl(200, $opt_arr);
foreach($proxies as $proxy){
$opt_arr[CURLOPT_PROXY] = $proxy;
$parallelcurl->setOptions($opt_arr);
$parallelcurl->startRequest($url, 'callback_p', array('proxy'=> $proxy));
}
$parallelcurl->finishAllRequests();
所以问题不在 php 或 curl 中,但在测试 url 中,我对此完全有狭隘的看法,自从我成为针对 google 测试它们,因此看起来 google 硬上限请求在 17 个线程,之后它抛出拒绝