首页 文章

为什么芹菜需要消息经纪人?

提问于
浏览
0

由于celery是一个作业队列/任务队列,name表明它可以维护其任务并处理它们 . 那么为什么它需要像rabbitmq或redis这样的消息代理呢?

1 回答

  • 1

    Celery是 Distributed Task Queue ,这意味着系统可以跨多个位置驻留在多台计算机上

    基本架构如下:

    workers - 可以从总线(任务队列)获取作业并处理数据的进程,它可以将结果放入总线,以便由不同的工作人员进一步处理

    bus - 任务队列这是一个简单的数据库,它将作业存储为消息,因此工作人员可以检索它们,阻止其他工作人员获取/放置他们的工作, redisactivemq 是此类行为的最佳候选者

    bas作为api所以你可以将工作提交到 Bus 车上供 Worker 工作 Celery 包括 schedulerbeat ),它定期将特定工作放在 Bus 车上,从而定期创建任务

    让我们想要废弃这个世界,但中国只能允许来自该地区的流量,欧洲和美国也是如此,因此您可以在亚马逊的计算中心 Build 一个 Worker 并将它们放在世界各地

    所以你只能使用一辆公共汽车,让我们说它位于美国,所有其他 Worker 都知道这辆公共汽车并可以连接到它,所以通过在美国的 Bus 车上放置一个特定的工作(废旧瓷器),这个过程在中国可以工作,因此分发

    我建议阅读正式的docs,这很简单

相关问题