芹菜任务apply_async行为不正确

时间:2015-11-20 11:22:10

标签: python celery

请拨打以下代码

 tasks.update_address_location.apply_async((address_obj.id), countdown = 10)

但是,任务会立即在队列中执行。它的工作方式也是我必须排除的其他可能性。以为某人可能有答案

capp = Celery('async', backend='redis://localhost:6379/0',
              broker='redis://localhost:6379/0', include=['app.async.tasks'])

# Optional configuration, see the application user guide.
capp.config_from_object(celeryconfig)
capp.conf.update(
    CELERY_TASK_RESULT_EXPIRES=3600,
)

if __name__ == '__main__':
    capp.start()

和芹菜这样称呼:

celery multi stop worker  -A app.async.celery_app:capp --beat --loglevel=debug --pidfile=celery.pid --logfile=celery.log

celery.log中的输出是一致且成功的,但没有延迟。

1 个答案:

答案 0 :(得分:2)

quirk的python - (x) == x - 包含一个元素的元组必须包含逗号 - (x,)

这样做:

apply_async((address_obj.id,), {}, countdown=10)