类 com.taobao.metamorphosis.network.PutCommand
的使用

使用 PutCommand 的软件包
com.taobao.metamorphosis.client.extension.producer   
com.taobao.metamorphosis.client.producer   
com.taobao.metamorphosis.gregor.master   
com.taobao.metamorphosis.network   
com.taobao.metamorphosis.server   
com.taobao.metamorphosis.server.assembly   
com.taobao.metamorphosis.server.network   
com.taobao.metamorphosis.server.store   
com.taobao.metamorphosis.server.transaction   
com.taobao.metamorphosis.server.transaction.store   
com.taobao.metamorphosis.utils   
 

com.taobao.metamorphosis.client.extension.producerPutCommand 的使用
 

参数类型为 PutCommandcom.taobao.metamorphosis.client.extension.producer 中的方法
protected  BooleanCommand AsyncMetaMessageProducer.invokeToGroup(String serverUrl, Partition partition, PutCommand putCommand, Message message, long timeout, TimeUnit unit)
           
 

com.taobao.metamorphosis.client.producerPutCommand 的使用
 

参数类型为 PutCommandcom.taobao.metamorphosis.client.producer 中的方法
protected  BooleanCommand SimpleMessageProducer.invokeToGroup(String serverUrl, Partition partition, PutCommand putCommand, Message message, long timeout, TimeUnit unit)
           
 

com.taobao.metamorphosis.gregor.masterPutCommand 的使用
 

参数类型为 PutCommandcom.taobao.metamorphosis.gregor.master 中的方法
 void SamsaCommandProcessor.processPutCommand(PutCommand request, SessionContext sessionContext, PutCallback cb)
          处理put请求,只有当master/slave全部写入成功的时候才认为写入成功
 

参数类型为 PutCommandcom.taobao.metamorphosis.gregor.master 中的构造方法
SamsaCommandProcessor.SyncAppendCallback(int partition, String partitionString, PutCommand request, long messageId, PutCallback cb)
           
 

com.taobao.metamorphosis.networkPutCommand 的使用
 

com.taobao.metamorphosis.networkPutCommand 的子类
 class SyncCommand
          同步复制,master/slave复制消息的协议,协议格式如下:
sync topic partition value-length flag msgId checksum opaque\r\ndata
 

com.taobao.metamorphosis.serverPutCommand 的使用
 

参数类型为 PutCommandcom.taobao.metamorphosis.server 中的方法
 void CommandProcessorFilter.processPutCommand(PutCommand request, SessionContext sessionContext, PutCallback cb)
           
 void CommandProcessor.processPutCommand(PutCommand request, SessionContext sessionContext, PutCallback cb)
           
 

com.taobao.metamorphosis.server.assemblyPutCommand 的使用
 

参数类型为 PutCommandcom.taobao.metamorphosis.server.assembly 中的方法
protected  int BrokerCommandProcessor.getPartition(PutCommand request)
           
 void TransactionalCommandProcessor.processPutCommand(PutCommand cmd, SessionContext context, PutCallback cb)
           
 void BrokerCommandProcessor.processPutCommand(PutCommand request, SessionContext sessionContext, PutCallback cb)
           
 

参数类型为 PutCommandcom.taobao.metamorphosis.server.assembly 中的构造方法
BrokerCommandProcessor.StoreAppendCallback(int partition, String partitionString, PutCommand request, long messageId, PutCallback cb)
           
 

com.taobao.metamorphosis.server.networkPutCommand 的使用
 

参数类型为 PutCommandcom.taobao.metamorphosis.server.network 中的方法
 void PutProcessor.handleRequest(PutCommand request, com.taobao.gecko.service.Connection conn)
           
 

com.taobao.metamorphosis.server.storePutCommand 的使用
 

参数类型为 PutCommandcom.taobao.metamorphosis.server.store 中的方法
 void MessageStore.append(long msgId, PutCommand req, AppendCallback cb)
          Append单个消息,返回写入的位置
 

类型变量类型为 PutCommandcom.taobao.metamorphosis.server.store 中的方法参数
 void MessageStore.append(List<Long> msgIds, List<PutCommand> putCmds, AppendCallback cb)
          Append多个消息,返回写入的位置
 void MessageStore.replayAppend(long offset, int length, int checksum, List<Long> msgIds, List<PutCommand> reqs, AppendCallback cb)
          重放事务操作,如果消息没有存储成功,则重新存储,并返回新的位置
 

com.taobao.metamorphosis.server.transactionPutCommand 的使用
 

参数类型为 PutCommandcom.taobao.metamorphosis.server.transaction 中的方法
 void TransactionStore.addMessage(MessageStore store, long msgId, PutCommand cmd, JournalLocation location)
           
 void TransactionRecoveryListener.recover(XATransactionId xid, PutCommand[] addedMessages)
           
 

com.taobao.metamorphosis.server.transaction.storePutCommand 的使用
 

声明为 PutCommandcom.taobao.metamorphosis.server.transaction.store 中的字段
 PutCommand JournalTransactionStore.AddMsgOperation.putCmd
           
 

返回 PutCommandcom.taobao.metamorphosis.server.transaction.store 中的方法
 PutCommand[] JournalTransactionStore.Tx.getRequests()
           
 

返回变量类型为 PutCommand 的类型的 com.taobao.metamorphosis.server.transaction.store 中的方法
 Map<MessageStore,List<PutCommand>> JournalTransactionStore.Tx.getPutCommands()
           
 

参数类型为 PutCommandcom.taobao.metamorphosis.server.transaction.store 中的方法
 void JournalTransactionStore.Tx.add(MessageStore store, long msgId, PutCommand putCmd)
           
 void JournalTransactionStore.addMessage(MessageStore store, long msgId, PutCommand putCmd, JournalLocation location)
          添加消息,为了保证添加顺序,这里不得不加锁
 

参数类型为 PutCommandcom.taobao.metamorphosis.server.transaction.store 中的构造方法
JournalTransactionStore.AddMsgOperation(MessageStore store, long msgId, PutCommand putCmd)
           
 

com.taobao.metamorphosis.utilsPutCommand 的使用
 

参数类型为 PutCommandcom.taobao.metamorphosis.utils 中的方法
static ByteBuffer MessageUtils.makeMessageBuffer(long msgId, PutCommand req)
          创建消息buffer,实际存储在服务器的结构如下: message length(4 bytes),including attribute and payload checksum(4 bytes) message id(8 bytes) message flag(4 bytes) attribute length(4 bytes) + attribute,optional payload
 

类型变量类型为 PutCommandcom.taobao.metamorphosis.utils 中的方法参数
static ByteBuffer MessageUtils.makeMessageBuffer(List<Long> msgIds, List<PutCommand> reqs)
           
 



Copyright © 2010–2013. All rights reserved.