Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/design-patterns/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Design patterns 微服务能否通过RabitMQ这样的队列系统向自身发送异步消息?_Design Patterns_Microservices_Message Queue - Fatal编程技术网

Design patterns 微服务能否通过RabitMQ这样的队列系统向自身发送异步消息?

Design patterns 微服务能否通过RabitMQ这样的队列系统向自身发送异步消息?,design-patterns,microservices,message-queue,Design Patterns,Microservices,Message Queue,我正在经历一个项目,其中一个微服务通过RabbitMQ向自己发送异步消息,因为它同时包含消息生产者和消费者部分。原因是该服务随后可以向其他服务生成相同类型的消息,并从其他服务接收相同类型的消息 这种模式对我来说是新的。这是微服务世界中的反模式吗?我不确定给出的理由是否是最佳动机,但在CQRS风格的体系结构中,向自身发送消息的服务是完全正常的。在这样的体系结构中,每个服务将承载两个进程:一个前端或公共API(例如网站或REST API)和一个后台进程/守护进程,该进程/守护进程处理公共API放入队

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


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

我不确定给出的理由是否是最佳动机,但在CQRS风格的体系结构中,向自身发送消息的服务是完全正常的。在这样的体系结构中,每个服务将承载两个进程:一个前端或公共API(例如网站或REST API)和一个后台进程/守护进程,该进程/守护进程处理公共API放入队列的所有消息。

这肯定是可行的,但感觉像是无限循环的好方法。