从数据库中提取芹菜

2024-04-20 00:25:13 发布

您现在位置:Python中文网/ 问答频道 /正文

有没有一种方法可以给芹菜beat一个callable,让它返回要传递给消息的参数?我希望能够从数据库中提取数据来构造要传递到芹菜队列的参数。你知道吗

我想做的是这样的:

CELERYBEAT_SCHEDULE = {
    'every-minut1': {
        'task': 'some_task',
        'schedule': timedelta(hours=1),
        'args': some_function_that_returns_a_tuple()
    },
}

目前,我有一台机器将消息添加到队列中,另一台机器将消息从队列中取出并处理它们。将消息添加到队列的机器正在硬编码它的参数,但我希望它从数据库中提取该信息。你知道吗

目前我能想到的唯一解决方案是让向队列中添加消息的机器自己运行芹菜。它将有一个单独的队列来运行向处理服务器的原始队列添加消息的命令。这似乎过于复杂,似乎应该有一个更简单的解决方案。你知道吗


Tags: 数据方法机器数据库消息task参数队列