com.alibaba.rocketmq.store
类 ConsumeQueue

java.lang.Object
  继承者 com.alibaba.rocketmq.store.ConsumeQueue

public class ConsumeQueue
extends Object

消费队列实现

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

字段摘要
static int CQStoreUnitSize
           
 
构造方法摘要
ConsumeQueue(String topic, int queueId, String storePath, int mapedFileSize, DefaultMessageStore defaultMessageStore)
           
 
方法摘要
 boolean commit(int flushLeastPages)
           
 void correctMinOffset(long phyMinOffset)
          逻辑队列的最小Offset要比传入的物理最小phyMinOffset大
 int deleteExpiredFile(long offset)
           
 void destroy()
           
 SelectMapedBufferResult getIndexBuffer(long startIndex)
          返回Index Buffer
 long getLastOffset()
          返回最后一条消息对应物理队列的Next Offset
 long getMaxOffsetInQuque()
           
 long getMaxPhysicOffset()
           
 long getMessageTotalInQueue()
          获取当前队列中的消息总数
 long getMinLogicOffset()
           
 long getMinOffsetInQuque()
           
 long getOffsetInQueueByTime(long timestamp)
          二分查找查找消息发送时间最接近timestamp逻辑队列的offset
 int getQueueId()
           
 String getTopic()
           
 boolean load()
           
 void putMessagePostionInfoWrapper(long offset, int size, long tagsCode, long storeTimestamp, long logicOffset)
           
 void recover()
           
 long rollNextFile(long index)
           
 void setMaxPhysicOffset(long maxPhysicOffset)
           
 void setMinLogicOffset(long minLogicOffset)
           
 void truncateDirtyLogicFiles(long phyOffet)
          根据物理Offset删除无效逻辑文件
 
从类 java.lang.Object 继承的方法
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

字段详细信息

CQStoreUnitSize

public static final int CQStoreUnitSize
另请参见:
常量字段值
构造方法详细信息

ConsumeQueue

public ConsumeQueue(String topic,
                    int queueId,
                    String storePath,
                    int mapedFileSize,
                    DefaultMessageStore defaultMessageStore)
方法详细信息

load

public boolean load()

recover

public void recover()

getOffsetInQueueByTime

public long getOffsetInQueueByTime(long timestamp)
二分查找查找消息发送时间最接近timestamp逻辑队列的offset


truncateDirtyLogicFiles

public void truncateDirtyLogicFiles(long phyOffet)
根据物理Offset删除无效逻辑文件


getLastOffset

public long getLastOffset()
返回最后一条消息对应物理队列的Next Offset


commit

public boolean commit(int flushLeastPages)

deleteExpiredFile

public int deleteExpiredFile(long offset)

correctMinOffset

public void correctMinOffset(long phyMinOffset)
逻辑队列的最小Offset要比传入的物理最小phyMinOffset大


getMinOffsetInQuque

public long getMinOffsetInQuque()

putMessagePostionInfoWrapper

public void putMessagePostionInfoWrapper(long offset,
                                         int size,
                                         long tagsCode,
                                         long storeTimestamp,
                                         long logicOffset)

getIndexBuffer

public SelectMapedBufferResult getIndexBuffer(long startIndex)
返回Index Buffer

参数:
startIndex - 起始偏移量索引

rollNextFile

public long rollNextFile(long index)

getTopic

public String getTopic()

getQueueId

public int getQueueId()

getMaxPhysicOffset

public long getMaxPhysicOffset()

setMaxPhysicOffset

public void setMaxPhysicOffset(long maxPhysicOffset)

destroy

public void destroy()

getMinLogicOffset

public long getMinLogicOffset()

setMinLogicOffset

public void setMinLogicOffset(long minLogicOffset)

getMessageTotalInQueue

public long getMessageTotalInQueue()
获取当前队列中的消息总数


getMaxOffsetInQuque

public long getMaxOffsetInQuque()


Copyright © 2012–2015. All rights reserved.