我的服务如下:
[Service]
User=vagrant
Group=vagrant
WorkingDirectory=/home/vagrant/
ExecStart=/usr/bin/celery -A tasks /usr/bin/flower --port=5000 --basic_auth=sun:flower --persistent=true --/var/log/supervisord.log
Restart=on-failure
Type=simple
在创建 REDIS 主从复制并将 Celery 和 Flower 指向 Master 之后,我创建了一个用于测试目的的简单任务......
Supervisord 的celery.ini
[program:SPSimpleTasks]
directory = /home/vagrant/
command = celery -A tasks worker --loglevel=DEBUG -n SimpleTasks
user=vagrant
autostart=true
autorestart=true
stdout_logfile=/var/log/supervisord.log
stderr_logfile=/var/log/supervisord.log
celery_app.py
from celery import Celery
app = Celery('tasks', backend='redis://:<PASSWORD>@192.168.100.20:6379/0')
#app.config_from_object('celeryconfig')
app.conf.update(
enable_utc = True,
broker_url = 'redis://:<PASSWORD>@192.168.100.20:6379/0',
result_backend = 'redis://:<PASSWORD>@192.168.100.20:6379/1',
result_persistent = True,
task_serializer = 'json',
result_serializer = 'json',
accept_content = ['json']
)
再次,工人工作正常,花显示任务结果。但是一旦我使用重新启动服务
sudo 服务花重启
Flower 在没有任何数据的情况下作为全新安装加载...
我对代理/后端网址做错了吗?