1、定义
RocketMQ消费者默认是集群CLUSTERING的方式消费的,消费者还可以用广播的模式进行消费。
2、集群CLUSTERING
当 Consumer 使用集群模式时,每条消息只会被 Consumer 集群内的任意一个 Consumer 实例消费一次。
比如当一个 Consumer 集群内有 3 个 Consumer 实例时,一条消息到达时,只会被Consumer 1、Consumer 2、Consumer 3中的一个消费。
关键代码:consumer.setMessageModel(MessageModel.CLUSTERING); //集群消费模式,是默认的消费模式
3、广播BROADCASTING
当 Consumer 使用广播模式时,每条消息都会被 Consumer 集群内所有的 Consumer 实例消费一次。
用前面的例子,当一个 Consumer 集群内有 3 个 Consumer 实例时,一条消息到达时,会被Consumer 1、Consumer 2、Consumer 3 三个都消费一次。
关键代码:consumer.setMessageModel(MessageModel.BROADCASTING); //广播消费模式