PHP 多个 Curl 请求
我目前经常使用 PHP 的 Curl。每次获取100页左右的结果需要花费很多时间。对于每个请求,我都使用这样的代码:
$ch = curl_init();
// get source
curl_close($ch);
我有哪些选项可以加快速度?
我应该如何使用multi_init()
等?
I'm currently using Curl for PHP a lot. It takes a lot of time to get results of about 100 pages each time. For every request i'm using code like this
$ch = curl_init();
// get source
curl_close($ch);
What are my options to speed things up?
How should I use the multi_init()
etc?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(4)
采用curl_multi - 它要好得多。保存握手——并不是每次都需要握手!
take curl_multi - it is far better. Save the handshakes - they are not needed every time!
当我使用“http://php.net/curl_multi_init”中给出的代码时,2个请求的响应是冲突的。
但是下面链接中编写的代码分别返回每个响应(以数组格式)
https://stackoverflow.com/a/21362749/3177302
when i use code given in "http://php.net/curl_multi_init", response of 2 requests are conflicting.
But the code written in below link, returns each response separately (in array format)
https://stackoverflow.com/a/21362749/3177302
或者采取
pcntl_fork
,fork
一些新线程来执行curl_exec
。但它不如curl_multi
好。or take
pcntl_fork
,fork
some new threads to executecurl_exec
. But it's not as good ascurl_multi
.