com.alibaba.rocketmq.client.impl.consumer
类 RebalanceImpl

java.lang.Object
  继承者 com.alibaba.rocketmq.client.impl.consumer.RebalanceImpl
直接已知子类:
RebalancePullImpl, RebalancePushImpl

public abstract class RebalanceImpl
extends Object

Rebalance的具体实现

从以下版本开始:
2013-6-22
作者:
shijia.wxr

字段摘要
protected  AllocateMessageQueueStrategy allocateMessageQueueStrategy
           
protected  String consumerGroup
           
protected static org.slf4j.Logger log
           
protected  MessageModel messageModel
           
protected  MQClientInstance mQClientFactory
           
protected  ConcurrentHashMap<MessageQueue,ProcessQueue> processQueueTable
           
protected  ConcurrentHashMap<String,SubscriptionData> subscriptionInner
           
protected  ConcurrentHashMap<String,Set<MessageQueue>> topicSubscribeInfoTable
           
 
构造方法摘要
RebalanceImpl(String consumerGroup, MessageModel messageModel, AllocateMessageQueueStrategy allocateMessageQueueStrategy, MQClientInstance mQClientFactory)
           
 
方法摘要
abstract  long computePullFromWhere(MessageQueue mq)
           
abstract  void dispatchPullRequest(List<PullRequest> pullRequestList)
           
 void doRebalance()
           
 AllocateMessageQueueStrategy getAllocateMessageQueueStrategy()
           
 String getConsumerGroup()
           
 MessageModel getMessageModel()
           
 MQClientInstance getmQClientFactory()
           
 ConcurrentHashMap<MessageQueue,ProcessQueue> getProcessQueueTable()
           
 ConcurrentHashMap<String,SubscriptionData> getSubscriptionInner()
           
 ConcurrentHashMap<String,Set<MessageQueue>> getTopicSubscribeInfoTable()
           
 boolean lock(MessageQueue mq)
           
 void lockAll()
           
abstract  void messageQueueChanged(String topic, Set<MessageQueue> mqAll, Set<MessageQueue> mqDivided)
           
 void removeProcessQueue(MessageQueue mq)
           
abstract  boolean removeUnnecessaryMessageQueue(MessageQueue mq, ProcessQueue pq)
           
 void setAllocateMessageQueueStrategy(AllocateMessageQueueStrategy allocateMessageQueueStrategy)
           
 void setConsumerGroup(String consumerGroup)
           
 void setMessageModel(MessageModel messageModel)
           
 void setmQClientFactory(MQClientInstance mQClientFactory)
           
 void unlock(MessageQueue mq, boolean oneway)
           
 void unlockAll(boolean oneway)
           
 
从类 java.lang.Object 继承的方法
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

字段详细信息

log

protected static final org.slf4j.Logger log

processQueueTable

protected final ConcurrentHashMap<MessageQueue,ProcessQueue> processQueueTable

topicSubscribeInfoTable

protected final ConcurrentHashMap<String,Set<MessageQueue>> topicSubscribeInfoTable

subscriptionInner

protected final ConcurrentHashMap<String,SubscriptionData> subscriptionInner

consumerGroup

protected String consumerGroup

messageModel

protected MessageModel messageModel

allocateMessageQueueStrategy

protected AllocateMessageQueueStrategy allocateMessageQueueStrategy

mQClientFactory

protected MQClientInstance mQClientFactory
构造方法详细信息

RebalanceImpl

public RebalanceImpl(String consumerGroup,
                     MessageModel messageModel,
                     AllocateMessageQueueStrategy allocateMessageQueueStrategy,
                     MQClientInstance mQClientFactory)
方法详细信息

unlock

public void unlock(MessageQueue mq,
                   boolean oneway)

unlockAll

public void unlockAll(boolean oneway)

lock

public boolean lock(MessageQueue mq)

lockAll

public void lockAll()

doRebalance

public void doRebalance()

messageQueueChanged

public abstract void messageQueueChanged(String topic,
                                         Set<MessageQueue> mqAll,
                                         Set<MessageQueue> mqDivided)

removeProcessQueue

public void removeProcessQueue(MessageQueue mq)

removeUnnecessaryMessageQueue

public abstract boolean removeUnnecessaryMessageQueue(MessageQueue mq,
                                                      ProcessQueue pq)

dispatchPullRequest

public abstract void dispatchPullRequest(List<PullRequest> pullRequestList)

computePullFromWhere

public abstract long computePullFromWhere(MessageQueue mq)

getSubscriptionInner

public ConcurrentHashMap<String,SubscriptionData> getSubscriptionInner()

getProcessQueueTable

public ConcurrentHashMap<MessageQueue,ProcessQueue> getProcessQueueTable()

getTopicSubscribeInfoTable

public ConcurrentHashMap<String,Set<MessageQueue>> getTopicSubscribeInfoTable()

getConsumerGroup

public String getConsumerGroup()

setConsumerGroup

public void setConsumerGroup(String consumerGroup)

getMessageModel

public MessageModel getMessageModel()

setMessageModel

public void setMessageModel(MessageModel messageModel)

getAllocateMessageQueueStrategy

public AllocateMessageQueueStrategy getAllocateMessageQueueStrategy()

setAllocateMessageQueueStrategy

public void setAllocateMessageQueueStrategy(AllocateMessageQueueStrategy allocateMessageQueueStrategy)

getmQClientFactory

public MQClientInstance getmQClientFactory()

setmQClientFactory

public void setmQClientFactory(MQClientInstance mQClientFactory)


Copyright © 2012-2014. All Rights Reserved.