我有2个应用程序可以启动自己的工作池。
首先,我认为每个池应该只有一个唯一的名称。 但我意识到他们之间仍然存在冲突。
例如,有时第一个工作池将收到一个任务,错误将由另一个池的工作人员写入。 或者,如果其他任务在第一个任务完成之前到达,则可能无法执行。
这就是我的supervisor.conf的样子:
[program:celery-worker]
environment=DISPLAY=":1001",DJANGO_SETTINGS_MODULE=victoria.settings.production
directory = /home/victoria/current
command = /home/victoria/virtualenv/bin/celery -A victoria worker -l info --hostname=worker1@myhost
stdout_logfile = /home/victoria/celery-victoria-worker.log
stderr_logfile = /home/victoria/celery-worker.log
loglevel=warn
[program:api-worker]
environment = DJANGO_SETTINGS_MODULE=settings.live
user = victoria
directory = /home/victoria/webapps/citysail/src
command = /home/victoria/webapps/citysail/.venv/bin/celery -A celery_app worker -l info -n api-worker --beat
stdout_logfile = /home/victoria/api-worker.log
loglevel = info
您是否了解如何为每个工作人员生成唯一名称?
谢谢!