重启芹菜工人没有更新节拍时间

时间:2017-03-02 20:13:45

标签: python-3.x celery

我尝试在向我的应用程序发出POST命令以更改节拍时间后重新启动节拍工作程序。当我停止并重新启动worker时,他们没有获取对celerybeat-schedule.db文件所做的更改。在停止和启动工人时,假设是否刷新节拍计划?在日志中,我看到节拍停止并重新开始。下面是我使用POST命令调用的3个函数,首先我停止工作,然后我修改计划,然后重新启动工作程序。使用django不是一种选择,因为我已经在使用烧瓶了。

def scheduler(frequency):
    celery_app.conf.CELERYBEAT_SCHEDULE = {
                                           'every-10-seconds': {
                                                                'task': 'tasks.add',
                                                                'schedule': int(frequency),
                                                                'args': (5, 5)
                                                                },
                                           }

def stop():
    subprocess.check_call(['celery', 'multi', 'stopwait', '1', '--pidfile=worker.pid'])
    return
def restart():
    subprocess.check_call(['celery', 'multi', 'start', '1', '-A', 'tasks', '-l', 'info',
                           '--pidfile=worker.pid', '--beat'])
    return

0 个答案:

没有答案