我是RabbitMQ的新手,使用RabbitMQ 3.5.3,Erlang R14B04和Alvaro Videla(https://github.com/videlalvaro/php-amqplib)的库在RabbitMQ中进行排队。 我需要让消费者一直保持活力,而不是生产者。 这背后的简单逻辑是,我通过cron运行我的生产者。在生成队列之后,不需要保持生产者连接的活动。但工人或消费者将被启动一次。这种联系永远不会消亡。
如果这也是由cron完成的话,我总会在一天结束时找到一长串消费者关系,这很烦人,而且不可取。
所以这里的妙语是:
1。每次生成队列并通过cron关闭连接。
2。消费者开始了一次并且永远持续下去排队的任何内容都会立即消耗。
这个架构可以在我的系统中构建。我需要做些什么必要的改变。
答案 0 :(得分:0)
阅读你的描述很难说些什么,或者我只是不理解你的问题。但我会建立应用程序,如果有什么东西到达,每1秒或3秒检查兔子
消费
createConnectionToRabbit
while (true) {
checkConnectionStillAlive
fetchDataFromQueue
doProcessData
sleep(3)
}
closeConnection
生产者
createConnectionToRabbit
sendDataToRabbit
closeConnection