【问题标题】:Multiple https requests.. how to?多个https请求..怎么办?
【发布时间】:2011-06-02 12:59:12
【问题描述】:

我有一个 https API URL,我需要运行多次,并尽快检查域的状态。

如何同时运行相同的URL 多次,同时接收输出中的响应并关闭已完成的连接,同时尽可能降低内存资源?

我被告知要在另一种语言(不是 PHP)中使用线程?

任何示例或伸出援手将不胜感激!谢谢

【问题讨论】:

标签: php memory curl https performance


【解决方案1】:

m.edmondson 比我快 :D

一个可能有用的信息:当同时使用 curl 执行大量请求时,您可能会遇到时间延迟,因为 curl DNS 解析器无法同时工作。

作为另一种想法,您可以编写一个 php cli 脚本来分叉单独工作的孩子,或者只使用 bash 和 lynx(在 linux 上)。

【讨论】:

  • 谢谢。您是否有使用这些方法多次运行 URL 的示例?
  • 我曾经构建了一个服务器观察工具,并使用了与 m.edmondson 提供的 base 完全相同的博文。
  • 所以没有什么值得添加的。只是要提一提:我在您的脚本中没有看到curl_multi_remove_handle(),也许这会减少一点内存。
  • 即使添加也无济于事。使用 curl_multi 加载超过 90 个 url 时,它仍然超过 100mb 内存限制。
  • 遗憾的是,我还没有任何优化 curl 脚本的经验。
【解决方案2】:

刚刚做了一个快速的谷歌并想出了this,我相信这会解决你的问题 - 这句话总结了它:

使用 curl_multi* 系列的 cURL 您可以提出这些请求的功能 同时地。这样你的应用就是 与最慢的请求一样慢,如 与所有请求的总和相反。

【讨论】:

  • 谢谢!这会解决我在这里遇到的问题吗:stackoverflow.com/questions/4567492/…,关于内存过剩?
  • @iCeR - 老实说我不知道​​,我主要是一个 .NET 程序员 - 我猜我只是幸运地使用了 google ;-)
猜你喜欢
  • 2014-02-14
  • 2011-05-26
  • 1970-01-01
  • 2015-05-16
  • 1970-01-01
  • 1970-01-01
  • 2014-06-14
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多