【问题标题】:PHP, Threads and curlPHP、线程和 curl
【发布时间】:2015-02-04 02:12:07
【问题描述】:

我有一个运行多个线程的 php 进程,每个线程都需要通过 curl 发出 http 请求,在每个线程中使用 curl 会导致问题,因为 curl 不是线程安全的,基本上我们 curl 库崩溃(我假设当执行 2 个并发卷曲时),我希望能够在每个线程中独立使用 curl,我的问题是,每个线程都有 curl_multi 资源并且可以做吗?还是我必须创建 1 个 curl_multi 资源来处理多个 CURL 请求并进行管理?显然,后一种选择需要更多的工作。有什么见解吗?

谢谢

丹尼尔

【问题讨论】:

    标签: php multithreading curl thread-safety


    【解决方案1】:

    我可以向您推荐我曾经在 200 个线程中运行 curl 的解决方案。我正在使用 Gearman:

    http://gearman.org/

    它可以非常简单地并行运行您的脚本。添加新线程是非常快的过程。在这种情况下 - 每个线程都是分开的 php 进程启动为:

    php file_path_to_script.php

    【讨论】:

      【解决方案2】:

      好吧,我们已经实现了 multi_curl,在每个线程中都有 1 个 multi_curl,到目前为止,在生产中一直工作没有问题,所以现在我的结论是这样做是安全的..

      【讨论】:

        猜你喜欢
        • 2020-11-24
        • 2012-09-05
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2010-12-10
        • 1970-01-01
        • 1970-01-01
        • 2012-09-01
        相关资源
        最近更新 更多