com.alibaba.rocketmq.client.consumer
接口 MQConsumer

所有超级接口:
MQAdmin
所有已知子接口:
MQPullConsumer, MQPushConsumer
所有已知实现类:
DefaultMQPullConsumer, DefaultMQPushConsumer

public interface MQConsumer
extends MQAdmin

Consumer接口

从以下版本开始:
2013-7-24
作者:
shijia.wxr

方法摘要
 Set<MessageQueue> fetchSubscribeMessageQueues(String topic)
          根据topic获取对应的MessageQueue,是可被订阅的队列
P.S 从Consumer Cache中拿数据,可以频繁调用。
 void sendMessageBack(MessageExt msg, int delayLevel)
          Consumer消费失败的消息可以选择重新发回到服务器端,并延时消费
会首先尝试将消息发回到消息之前存储的主机,此时只传送消息Offset,消息体不传送,不会占用网络带宽
如果发送失败,会自动重试发往其他主机,此时消息体也会传送
重传回去的消息只会被当前Consumer Group消费。
 
从接口 com.alibaba.rocketmq.client.MQAdmin 继承的方法
createTopic, earliestMsgStoreTime, maxOffset, minOffset, queryMessage, searchOffset, viewMessage
 

方法详细信息

sendMessageBack

void sendMessageBack(MessageExt msg,
                     int delayLevel)
                     throws RemotingException,
                            MQBrokerException,
                            InterruptedException,
                            MQClientException
Consumer消费失败的消息可以选择重新发回到服务器端,并延时消费
会首先尝试将消息发回到消息之前存储的主机,此时只传送消息Offset,消息体不传送,不会占用网络带宽
如果发送失败,会自动重试发往其他主机,此时消息体也会传送
重传回去的消息只会被当前Consumer Group消费。

参数:
msg -
delayLevel -
抛出:
InterruptedException
MQBrokerException
RemotingException
MQClientException

fetchSubscribeMessageQueues

Set<MessageQueue> fetchSubscribeMessageQueues(String topic)
                                              throws MQClientException
根据topic获取对应的MessageQueue,是可被订阅的队列
P.S 从Consumer Cache中拿数据,可以频繁调用。Cache中数据大约30秒更新一次

参数:
topic - 消息Topic
返回:
返回队列集合
抛出:
MQClientException


Copyright © 2012-2014. All Rights Reserved.