Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/django/21.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 为两个django应用程序在服务器中运行两个芹菜工人_Python_Django_Redis_Celery - Fatal编程技术网

Python 为两个django应用程序在服务器中运行两个芹菜工人

Python 为两个django应用程序在服务器中运行两个芹菜工人,python,django,redis,celery,Python,Django,Redis,Celery,我有一个服务器,其中两个django应用程序运行appone,apptwo 对于他们,两个芹菜工人从命令开始: celery worker -A appone -B --loglevel=INFO celery worker -A apptwo -B --loglevel=INFO 两者都指向同一个代理redis://localhost:6379" redis是用db 0和1设置的 我可以在两个应用的日志中看到这两个应用中配置的任务,这会导致警告和错误 我们是否可以在django设置中进行

我有一个服务器,其中两个django应用程序运行appone,apptwo 对于他们,两个芹菜工人从命令开始:

celery worker -A appone -B --loglevel=INFO


celery worker -A apptwo -B --loglevel=INFO
两者都指向同一个代理redis://localhost:6379"

redis是用db 0和1设置的

我可以在两个应用的日志中看到这两个应用中配置的任务,这会导致警告和错误

我们是否可以在django设置中进行配置,使芹菜只起作用,而不干扰彼此的任务?

您可以将其分配到不同的队列。用两个不同的
-Q myqueueX
启动芹菜,然后在两个Django项目中使用不同的
芹菜\u DEFAULT\u QUEUE

根据芹菜的配置,Django设置应类似于:

CELERY_DEFAULT_QUEUE = 'myqueue1'
您还可以通过以下方式进行更细粒度的控制:

@celery.task(queue="myqueue3")
def some_task(...):
  pass
此处有更多选项: