public class RocketMqMessageListSplitter
extends java.lang.Object
implements java.util.Iterator<java.util.List<org.apache.rocketmq.common.message.Message>>
用于将RocketMQ的批量消息拆分成1M, 进行分批发送(官方DEMO)
//Messages of the same batch should have: same topic, same waitStoreMsgOK and no schedule support.
String topic = "simple";
List messages = new ArrayList<>();
messages.add(new Message(topic, "A", "Hello batch 1".getBytes()));
messages.add(new Message(topic, "B", "Hello batch 2".getBytes()));
messages.add(new Message(topic, "C", "Hello batch 3".getBytes()));
MessageListSplitter splitter = new MessageListSplitter(messages);
while (splitter.hasNext()) {
List listItem = splitter.next();
defaultProducer.send(listItem);
}
| 构造器和说明 |
|---|
RocketMqMessageListSplitter(java.util.List<org.apache.rocketmq.common.message.Message> messages) |
public RocketMqMessageListSplitter(java.util.List<org.apache.rocketmq.common.message.Message> messages)
public boolean hasNext()
hasNext 在接口中 java.util.Iterator<java.util.List<org.apache.rocketmq.common.message.Message>>public java.util.List<org.apache.rocketmq.common.message.Message> next()
next 在接口中 java.util.Iterator<java.util.List<org.apache.rocketmq.common.message.Message>>public void remove()
remove 在接口中 java.util.Iterator<java.util.List<org.apache.rocketmq.common.message.Message>>