【发布时间】:2012-06-26 17:23:18
【问题描述】:
我正在使用a good Multi CURL interface called Rolling CURL
http://code.google.com/p/rolling-curl/issues/detail?id=20
它运行良好,例如它在大约 3 秒内从 20 个站点获取数据。问题是我需要它在同一服务器上的 200 - 300 个站点上工作。这与在循环中发出单个 CURL 请求所需的时间大致相同,大约为 10 分 47 秒。所以我有点不知道该怎么做。我需要做的就是获取每个站点上的 HTTP 代码。我尝试过 file_get_contents、PHP FTP 函数,它们的速度要慢得多。
另一件事是,当我在同一服务器上运行 12 个以上域的列表时,它似乎阻止了请求,所以我根本没有在任何站点上获取任何数据。当我运行少于 12 个的列表时,不会出现此问题。我只获取站点的标题数据,所以它不应该那么慢。
如果有人可以帮助我或详细解释为什么会发生这种情况,并提供有关如何克服此问题的指示,我将非常感激。
【问题讨论】:
-
您是否已将主机记录添加到您的服务器以防止 DNS 查找?
-
@hakre 我使用了 curl no body 技巧并循环运行它,它对于 295 个域来说太慢了,花费的时间是 10 分 57 秒。
-
~11 秒 295 个请求对我来说听起来并不慢。
-
@petah 我不是服务器维护和保养方面的专家,所以你必须为我分解一下。
标签: php multiple-domains curl-multi