gpt4 book ai didi

python - 带倒计时的 celery 任务

转载 作者:太空狗 更新时间:2023-10-30 00:50:07 25 4
gpt4 key购买 nike

我正在使用 Celery 2.5.1 并尝试使用 countdown 在 20 秒后运行任务,但它会立即执行。

我将其用作:

DemoTask.apply_async(countdown = 20)

我是不是漏掉了什么?

最佳答案

问题可能是不在正确的时区。通过设置 countdown=20,您可能会告诉 Celery 在 3 小时前的 20 秒后执行任务。

我建议使用 pytz library告诉 Celery 在正确的时间开始任务:

from datetime import datetime, timedelta
from pytz import timezone

# Set timezone: http://en.wikipedia.org/wiki/List_of_tz_zones_by_name
my_tz = timezone('US/Eastern')

DemoTask.apply_async(eta=my_tz.localize(datetime.now()) + timedelta(seconds=20))

如果您使用的是 Django(并在 settings.py 中设置了 TIME_ZONE),甚至更容易:

from datetime import timedelta
from django.utils.timezone import now

DemoTask.apply_async(eta=now() + timedelta(seconds=20))

关于python - 带倒计时的 celery 任务,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24613377/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com