首页 > 解决方案 > 微服务可以通过像 RabitMQ 这样的队列系统向自己发送异步消息吗?

问题描述

我正在经历一个项目,其中微服务通过 RabbitMQ 向自己发送异步消息,因为它包含消息生产者和消费者部分。原因是该服务可以向其他服务生成相同类型的消息,并从其他服务接收相同类型的消息。

这种模式对我来说是新的。它是微服务世界中的反模式吗?

标签: design-patternsmicroservicesmessage-queue

解决方案


我不确定给出的原因是最好的动机,但是在 CQRS 风格的架构中,向自己发送消息的服务是完全正常的。在这样的架构中,每个服务将托管两个进程:前端或公共 API(例如网站或 REST API)和处理公共 API 放入队列的所有消息的后台进程/守护进程。


推荐阅读