【发布时间】:2016-05-05 01:54:07
【问题描述】:
我无法在服务器上将 Celery 设置为守护进程(django 1.6.11、celery 3.1、Ubuntu 14.04) 尝试了很多选项,任何人都可以设置完整的工作配置来运行 celery 作为守护进程吗?
我对官方文档http://docs.celeryproject.org/en/latest/tutorials/daemonizing.html#generic-init-scripts 感到非常失望——这些都不起作用,没有完整的分步教程。 youtube 上关于如何设置守护进程的零 (!!!) 视频。
现在我可以通过 celery worker -A engine -l info -E 简单地运行 celery 来自 django 的任务已成功执行。
我已经完成了配置:
/etc/defaults/celery
# Name of nodes to start
# here we have a single node
CELERYD_NODES="w1"
# or we could have three nodes:
#CELERYD_NODES="w1 w2 w3"
# Absolute path to "manage.py"
CELERY_BIN="/var/www/engine/manage.py"
# How to call manage.py
CELERYD_MULTI="celery multi"
# Extra command-line arguments to the worker
CELERYD_OPTS="--time-limit=300 --concurrency=2"
# %N will be replaced with the first part of the nodename.
CELERYD_LOG_FILE="/var/log/celery/%N.log"
CELERYD_PID_FILE="/var/run/celery/%N.pid"
# Workers should run as an unprivileged user.
CELERYD_USER="root"
CELERYD_GROUP="root"
/etc/init.d/celeryd
来自https://github.com/celery/celery/blob/3.1/extra/generic-init.d/celeryd,没有变化
现在,当我转到控制台并运行时: cd /etc/init.d celery multi start w1
我看到了输出:
celery multi v3.1.11 (Cipater)
> Starting nodes...
> w1@engine: OK
所以,没有错误!没有调用任务,我不知道出了什么问题。
【问题讨论】:
标签: python django celery daemon