将任务发送给 celery 中的两个不同的工人

问题描述

我在 celery 中有两个任务,想将它们发送给不同的工人来完成,但我不知道如何做到这一点。我查看了 celery 文档的 task_routes 部分,并尝试了 stackoverflow 中的一些东西,但没有成功。

tasks.py

> genbadge coverage

我有两个 celery 工人,我希望他们每个人都专注于一项任务,因此 worker1 在 task1 上,worker2 在 task2 上

芹菜.py

@app.task
def task1():
     does something


@app.task
def task2():
     does something else

然后 procfile -

os.environ.setdefault('DJANGO_SETTINGS_MODULE','project.settings')

app = Celery('project')

app.conf.timezone = 'Europe/London'

app.config_from_object('django.conf:settings')
app.conf.update(broKER_URL=str(os.getenv('REdis_URL')),CELERY_RESULT_BACKEND=str(os.getenv('REdis_URL')),broker_use_ssl = {
                        'ssl_cert_reqs': ssl.CERT_NONE
                    },redis_backend_use_ssl = {
                        'ssl_cert_reqs': ssl.CERT_NONE
                    })
                
app.autodiscover_tasks()

如何设置队列以使 worker1 = task1 和 worker2 = task2?

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...