PHP推送到消息队列;使用多线程python客户端进程?

时间:2013-04-23 14:58:28

标签: php python message-queue

以下是我要做的事情:使用PHP将消息推送到队列中(BeanstalkdIronMQAmazon SQS)。

然后我想要一个Python脚本来立即获取消息。我想我只有一个Python脚本运行while(true)循环来继续轮询消息服务器?

然后使用新线程为每个作业处理它。如果队列中有10条消息,我希望python运行10个线程,每个作业运行1个。

我的问题是:

  1. 这是一种坚实的做事方式,还是有更好的方法来设置它?
  2. 如何确保我的Python脚本启动并永远轮询?

1 个答案:

答案 0 :(得分:1)

  

这是一种可靠的做事方式,还是有更好的方法来设置它?

对我来说听起来很合理,但如果你期望大量的同时工作,你可能想要使用thread pool来限制线程的总数。

对于CPU密集型线程,当线程总数超过CPU内核总数时,如果线程需要大量磁盘I / O,您将不会获得更多CPU性能,您需要限制它们是为了避免颠簸磁盘。

  

如何确保我的Python脚本启动并永远轮询?

守护程序进程通常会有另一个监视它们的进程,并在它们崩溃或无响应时重新启动它们。一个简单的cronjob可能就足够了。