我有两个使用Celery的不同Python应用程序连接到同一个broker。
服务器A有我的所有@任务,但我需要从Server B执行这些任务。我无法执行标准导入任务,因为它在服务器B上不存在。
如何在服务器B的Celery中运行仅存在于服务器A上的任务?
即
服务器B:
from tasksFromSeverA import add
add.delay(4, 4)
Celery中是否有允许您向Broker发送信号以运行一个名为"Add"的任务?
据我所知,您无法在"服务器B"中执行未在"服务器"中实现的任务。
您所能做的是从"服务器B"在"服务器a"中执行任务。您可以使用send_task函数来实现这一点,如下链接所述:
http://celery.readthedocs.org/en/latest/faq.html#can-i-call-a-task-by-name