0

这就是我正在尝试做的事情:使用 PHP 将消息推送到队列中(或者Beanstalkd,,,IronMQAmazon SQS

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

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

我的问题是:

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

1 回答 1

1

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

对我来说听起来很合理,但如果您期望同时有大量作业,您可能希望通过使用线程池来限制线程总数。

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

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

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

于 2013-04-23T15:11:24.700 回答