问题描述
我在 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 (将#修改为@)