- c - 在位数组中找到第一个零
- linux - Unix 显示有关匹配两种模式之一的文件的信息
- 正则表达式替换多个文件
- linux - 隐藏来自 xtrace 的命令
我一直在开发 Django 应用程序,现在我正在尝试为后台任务添加 Celery。我需要对正常任务和周期性任务进行排队。我可以很好地启动 celeryd,并用它执行任务(我用命令 python manage.py celeryd start --settings=settings --loglevel=INFO
启动它)。
在 Windows 上,您不能执行 -beat
/-b
来启用节拍模式;您需要将 celerybeat 作为一项单独的服务启动(这在 Celery 文档的常见问题解答部分中有说明)。如果我在命令行中键入它——python manage.py celerybeat -s djcelery.schedulers.DatabaseScheduler --settings=settings --loglevel=INFO
——我会收到如下错误:
[2012-01-02 19:06:52,009: WARNING/MainProcess] ERROR: Pidfile (celerybeat.pid) a
lready exists.
Seems we're already running? (PID: 2364)
[2012-01-02 19:06:52,012: INFO/MainProcess] process shutting down
并且 celerybeat 从未真正启动过。所以我不能执行任何周期性任务......有什么想法吗?我只找到one other page有人强调了类似的错误,但没有提供解决方案。
如果需要任何进一步的信息,请告诉我。我很困惑,因为我找不到关于这个主题的任何信息,而且我今天一整天都在尝试解决这个问题......谢谢。
最佳答案
在您的文件系统中搜索该 pid 文件并将其删除。在 unix 机器上,这通常意味着程序没有正确关闭。您应该检查它是否已经在任务管理器中运行,如果是,则将其杀死,并删除该文件
然后再试一次。
如果不存在 pid 文件,这可能意味着软件存在问题,因为它可能是从 unix 移植过来的?
关于python - celery + Django : Cannot start celerybeat on Windows 7,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8706674/
我是一名优秀的程序员,十分优秀!