您可以使用curl_multi_*
并行处理不同用户的请求。它不会加快每个用户的流程,但由于您可以并行执行 10-30 个或更多请求,因此它将加快整个交易的速度。
唯一的复杂之处是您需要为每个请求单独的 cookie 文件。这是让您入门的示例代码:
$chs = array();
$cmh = curl_multi_init();
for ($t = 0; $t < $tc; $t++)
{
$chs[$t] = curl_init();
// set $chs[$t] options
curl_multi_add_handle($cmh, $chs[$t]);
}
$running=null;
do {
curl_multi_exec($cmh, $running);
} while ($running > 0);
for ($t = 0; $t < $tc; $t++)
{
$contents[$t] = curl_multi_getcontent($chs[$t]);
// work with $contencts[$t]
curl_multi_remove_handle($cmh, $chs[$t]);
curl_close($chs[$t]);
}
curl_multi_close($cmh);