5
我已经得到了Celery任务,使用教程中的默认设置以及在Ubuntu上运行的rabbitmq。当我毫不拖延地安排任务时,一切都很好,但是当我给他们一个eta时,他们会在未来安排好,就好像我的时钟已经关闭了一样。celery任务eta关闭,使用rabbitmq
这里是询问任务的一些Python代码:
for index, to_address in enumerate(email_addresses):
# schedule one email every two seconds
delay = index * 2
log.info("MessageUsersFormView.process_action() scheduling task,"
"email to %s, countdown = %i" % (to_address, delay))
tasks.send_email.apply_async(args=[to_address, subject, body],
countdown = delay)
所以,第一个应该马上出去,然后每两秒钟。看着我的芹菜控制台,第一个立即发生,然后其他人都计划开的两个秒,但是从明天开始:
[2012-03-09 17:32:40,988: INFO/MainProcess] Got task from broker: stabil.tasks.send_email[24fafc0b-071b-490b-a808-29d47bbee435]
[2012-03-09 17:32:40,989: INFO/MainProcess] Got task from broker: stabil.tasks.send_email[3eb6c3ea-2c84-4368-babe-8a2ac0093836] eta:[2012-03-10 01:32:42.971072-08:00]
[2012-03-09 17:32:40,991: INFO/MainProcess] Got task from broker: stabil.tasks.send_email[a53110d6-b704-4d9c-904a-8d74b99a33af] eta:[2012-03-10 01:32:44.971779-08:00]
[2012-03-09 17:32:40,992: INFO/MainProcess] Got task from broker: stabil.tasks.send_email[2363329b-47e7-4edd-b38e-b09fed232003] eta:[2012-03-10 01:32:46.972422-08:00]
我完全陌生的两个芹菜的RabbitMQ等如何解决任何提示这或寻找原因的地方会很好。这是在Ubuntu的VMWare虚拟机上,但我的时钟设置正确。 谢谢!
感谢您的回应,但如果是这样的话,我会认为任务会执行。第一个任务(倒计数= 0)执行,但其他任何人都不执行,他们应该在彼此之后执行2秒。 – 2012-03-11 01:05:15