我用Python编写了带有多个组件的“项目”:有几个不同的Pyramid和Twisted应用程序正在运行。
我们正在考虑使用Celery从Pyramid和Twisted中卸载一些作品。为了清楚起见,我们正在查看一个Celery实例/配置,它处理多个Pyramid和Twisted应用程序的工作。
我在网上找到的所有信息都涵盖了一个或多个应用程序的多个Celery;多个应用程序不是一个芹菜。 Celery将执行所有这些应用程序通用的4-5个功能。
对于这种设置是否有任何建议的策略/常见缺陷,或者我们是否应该通常使用所有不同项目导入的独立celery_tasks
包?
答案 0 :(得分:1)
是分布式系统。根据定义,只要它们由工作人员执行并且调用者能够获取结果,您调用任务的位置无关紧要。
如果两个项目都配置正确,可以发送任务和接收结果,那么您应该没问题。一个具有共同任务的共享模块将会很好。
共享工作人员应仅导入该模块。