是否可以通过外部 API 几乎开箱即用地使用 Celery



我发现 Celery 是使用来自多个 rabbitmq 队列的异步事件并将工作负载分散到内部 API 的理想选择。

是否有某种开箱即用的配置可以根据命名队列或消息动态路由作业到外部 API,只需每个队列的工作器数量,也许是用于外部 API 调用、确认、死信交换的 TTL,......

我不太喜欢Python,目标是只需要维护配置。

据我所知,Celery 不会消耗任意的 RabbitMQ 消息 - 只使用那些特定于 Celery 的消息,所以我认为 Celery 不适合您上面描述的内容。另一方面,海带(这是芹菜项目之一(可用于您所说的内容。甚至更低级别 - py-amqp 库(也在 Celery 保护伞下(。

Celery

将使用队列中的所有消息,但要强制它处理它们,您必须将消息转换为 Celery 接受的特定 JSON 格式,否则消息将被丢弃

通常,Celery 可能适合以异步方式进行外部 API 调用,但不适用于消息路由
我建议你看看Apache Camel框架,它实现了EIP,包括死信和消息的TTL

相关内容

  • 没有找到相关文章

最新更新