摘要:
使用中介者模式轻松实现命令查询职责分离,构建高内聚、低耦合的应用系统 一、知识点回顾 1. 什么是CQRS? CQRS是Command Query Responsibility Segregation的缩写,一般称作命令查询职责分离。从字面意思理解,就是将命令(写入)和查询(读取)的责任划分到不同的 阅读全文
posted @ 2026-03-04 10:59
中华人民共和国程序员
阅读(107)
评论(0)
推荐(0)
上一篇文章中已经通过一个实际的业务场景结合RabbitMQ的四种交换机类型对RabbitMQ发布订阅模式同一消费者多个实例如何防止重复消费这个问题给出了解决方案。水这篇的目的主要是再给出一个可以直接抄作业的代码。 阅读全文
微服务架构模式中,服务间的通信一般采用HTTP、RPC或者MQ(消息队列)。在这三种方案中,HTTP和RPC是一对一的方式,通常用来进行查询或者命令式的操作,MQ则多用于事件的发布和处理。
在实际项目中我们通常会遇到一种情况:事件有多个订阅者,有的订阅者部署多个实例,要求每个事件只需要发布一次,每个订阅者都要能收到且仅能有其中一个实例收到并进行处理。
简单说就是既要所有订阅者都能收到消息,又要保证每个订阅者只能消费一次,不能重复消费。那么在使用RabbitMQ作为消息中间件时应该如何处理这个问题? 阅读全文