我正在使用djcelery和supervisor进行工作。 我曾经通过supervisor运行celery,一切都很顺利,但是当我意识到需要将其更改为多任务模式时,所有东西都崩溃了。 如果我在终端中运行celeryd_multi,它可以正常工作,但始终在后台运行。像supervisor这样的命令需要在前台运行,这就是问题所在。
这是我的celery.ini
文件:
[program:celery_{{ division }}]
command = {{ virtualenv_bin_dir }}/python manage.py celeryd_multi start default mailchimp -c:mailchimp 3 -c:default 5 --loglevel=info --logfile={{ log_dir }}/celery/%n.log --pidfile={{ run_dir }}/celery/%n.pid --schedule=/home/celery/celerybeat-schedule --settings={{ django_settings_python_path }}
autorestart = false
autostart = false
directory = {{ repo_dir }}/{{ division }}
user=celery
numprocs = 1
redirect_stderr = True
stopwaitsecs = 10
startsecs = 10
priority = 997
startretries = 3
这是我在终端中输入的命令,运行正常:
python manage.py celeryd_multi start default mailchimp -c:mailchimp 3 -c:default 5 --loglevel=info --logfile=/var/log/celery/%n.log --pidfile=/var/log/celery/%n.pid --schedule=/home/celery/celerybeat-schedule --settings=lively.settings_gunicorn