【问题标题】:Can a microservice send async message to itself via a queue system like RabitMQ?微服务可以通过像 RabbitMQ 这样的队列系统向自己发送同步消息吗?
【发布时间】:2021-08-18 14:54:11
【问题描述】:

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

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

【问题讨论】:

  • 这绝对是可行的,但感觉像是无限循环的好方法。

标签: design-patterns microservices message-queue


【解决方案1】:

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

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2020-09-12
    • 1970-01-01
    • 1970-01-01
    • 2020-03-01
    • 2018-12-28
    • 2010-11-22
    • 2017-04-27
    • 2023-04-10
    相关资源
    最近更新 更多