rocketmq3.26研究之五DefaultMQPushConsumer
DefaultMQPushConsumer rocketmq客户端消费者实现,从名字上已经可以看出其消息获取方式为broker往消费端推送数据,其内部实现了流控,消费位置上报等等。 重要字段 1 String consumerGroup 消费者组名,必须设置 需要注意的是,多个消费者如果具有同样的组名,那么这些消费者必须只消费同一个topic,具体原因参见 rocketmq问题汇总-一个consumerGroup只对应一个topic 2 MessageModel messageModel 消费的方式,分为两种: 2.1 BROADCASTING 广播模式,即所有的消费者可以消费同样的消息 2.2 CLUSTERING 集群模式,即所有的消费者平均来消费一组消息 3 ConsumeFromWhere consumeFromWhere 消费者从那个位置消费,分别为: 3.1 CONSUME_FROM_LAST_OFFSET:第一次启动从队列最后位置消费,后续再启动接着上次消费的进度开始消费 3.2 CONSUME_FROM_FIRST_OFFSET:第一次启动从队列初始位置消费,后续再启动接着上次消费的进度开始消费 3.3 CONSUME_FROM_TIMESTAMP:第一次启动从指定时间点位置消费,后续再启动接着上次消费的进度开始消费 以上所说的第一次启动是指从来没有消费过的消费者