consume
<T> void consume(String consumerGroupName,
String topic,
String tag,
org.apache.rocketmq.common.protocol.heartbeat.MessageModel messageModel,
Class<T> messageClass,
RocketmqConsumerHandler<T> handler)
throws org.apache.rocketmq.client.exception.MQClientException
消费消息,消费者一旦创建,不能更改,因此每次调用该方法均会新建一个消费者
- 参数:
consumerGroupName
- 消费者组名,需要保证组内的消费者订阅的topic都必须一致,组的意义在于集群模式下,当一个节点挂掉,
可以依靠组内其他节点继续工作。
topic
- 每个consumer必须且只能关注一个topic
tag
- 指定tag/key来进行过滤消息,支持通配符。*代表消费此topic下的全部消息,不进行过滤。
messageModel
- 消息消费模式,只有两种,默认集群模式,此时一条消息只会被一个消费者消费;广播模式则一条消息会被所有消费者消费。
messageClass
- 消息类型
handler
- 函数式处理
- 抛出:
org.apache.rocketmq.client.exception.MQClientException