我真的很难在Windows7上使用Celery Beat设置定期任务(不幸的是,这正是我目前正在处理的问题)。将使用celery的应用程序是用CherryPy编写的,因此Django库在这里并不相关。我要找的只是一个简单的例子,说明如何在后台启动芹菜拍打过程。FAQ部分有以下内容,但我还没能真正做到:
窗口
worker的-B/-beat选项不起作用?¶
回答:没错。把芹菜节和芹菜工人作为单独的服务。在
我的项目布局如下:
proj/
__init__.py (empty)
celery.py
celery_schedule.py
celery_settings.py (these work
tasks.py
在芹菜.py公司名称:
^{pr2}$在任务.py在
from __future__ import absolute_import
from proj.celery import app
@app.task
def add(x, y):
return x + y
芹菜_日程表.py在
from datetime import timedelta
CELERYBEAT_SCHEDULE = {
'add-every-30-seconds': {
'task': 'tasks.add',
'schedule': timedelta(seconds=3),
'args': (16, 16)
},
}
从命令行(从“proj”的父目录)运行“celeri worker--app=proj-l info”可以很好地启动worker线程,我可以从Python终端执行add任务。但是,我就是不知道如何启动beat服务。显然,语法可能也不正确,因为我还没有通过缺少的--beat选项。在
只需通过一个新的终端窗口启动另一个进程,确保您在正确的目录中,并执行命令celerybeat(beat关键字前面不需要'')。在
如果这不能解决您的问题,重命名您的芹菜_日程表.py归档到芹菜配置.py包括在你的芹菜.py文件格式:app.config_从_对象('celeryconfig')就在您的姓名上方==main
然后产生一个新的芹菜打浆过程:芹菜打浆
相关问题 更多 >
编程相关推荐