Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/visual-studio-2012/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在PHP和/或Symfony2中运行多个并行Rabbitmq/AMQP使用者?_Php_Symfony_Rabbitmq_Php Amqp - Fatal编程技术网

如何在PHP和/或Symfony2中运行多个并行Rabbitmq/AMQP使用者?

如何在PHP和/或Symfony2中运行多个并行Rabbitmq/AMQP使用者?,php,symfony,rabbitmq,php-amqp,Php,Symfony,Rabbitmq,Php Amqp,我有一个新闻刮板/RSS聚合,通过此库广播消息: 我目前有一名广播/制作人和一名消费者 有没有办法让多个使用者通过PHP并行运行?我知道PHP在本机上不支持这一点。实际上可以通过cURL完成,但afaikcurl主要用于基于网络/Web的请求 那么,我有没有办法用PHP实现这一点?当然,我可以用Python/Java实现,但我的水平在这两方面都不是很好。您真的需要rabbitmq这样的消息传递系统吗?IMHO是更适合您的任务的解决方案。在gearman网站上,这是一个很好的开始 它允许您并行工

我有一个新闻刮板/RSS聚合,通过此库广播消息:

我目前有一名广播/制作人和一名消费者

有没有办法让多个使用者通过PHP并行运行?我知道PHP在本机上不支持这一点。实际上可以通过cURL完成,但afaikcurl主要用于基于网络/Web的请求


那么,我有没有办法用PHP实现这一点?当然,我可以用Python/Java实现,但我的水平在这两方面都不是很好。

您真的需要rabbitmq这样的消息传递系统吗?IMHO是更适合您的任务的解决方案。在gearman网站上,这是一个很好的开始

它允许您并行工作,以实现负载平衡处理

您可以与并行运行和控制多个Worker实例。 是如何安装和配置supervisor的一个很好的示例

我将这两种服务结合起来用于同一项任务——我从多个来源聚合rss,它的效果非常好

$gearman_top
 Queue Name   | Worker Available | Jobs Waiting | Jobs Running
---------------------------------------------------------------
 parseFeed    |               2  |           0  |           0
---------------------------------------------------------------

使用线程怎么样?我将尝试检查它,尽管它仍然是一个alpha扩展,并且没有很好的文档记录,我曾经读到有一种方法可以在php中为RabbitMQ和Symfony2/Silex运行并行消费者,但我真的找不到类似的链接。听起来Gearman只是在这里取代RabbitMQ的相同角色(队列),OP问题的实际答案是使用主管来控制多个工人(用MQ的说法是“消费者”)。。。我不确定我是否正在改变我正在使用的所有东西,我最好使用python多线程解决方案,而不是迁移到Gearman,顺便说一句:我知道Gearman(只是名字),但从未尝试过。。