我正在使用Python 2.7
, beanstalkd server
with beanstalkc
作为客户端库。
处理每个作业大约需要 500 到 1500 毫秒,具体取决于作业的大小。
我有一份cron
工作将继续向 beanstalkd 队列添加工作,还有一个“工人”将在无限循环中运行,获取工作并处理它们。
例如:
def get_job(self):
while True:
job = self.beanstalk.reserve(timeout=0)
if job is None:
timeout = 10 #seconds
continue
else:
timeout = 0 #seconds
self.process_job(job)
这导致"timed out"
异常。
这是从队列中拉出作业的最佳做法吗?
有人可以帮我吗?