【发布时间】:2015-01-02 14:24:52
【问题描述】:
我是 Active MQ 的新手。我的队列只有一个消费者。我正在同步阅读消息,并且每条消息的最后都有唯一的字符串。有些消息很大,因此消费者分两部分接收这些消息,并通过唯一的字符串,消费者制作完整的消息。
StringBuilder snapshotUpdateString = new StringBuilder("");
while(true) {
Message messageData = consumer.receive();
TextMessage textMessage = (TextMessage) messageData;
String receivedMessage=textMessage.getText();
if (receivedMessage.contains("" + (char) PushPortContants.EOF)) {
snapshotUpdateString.append(receivedMessage);
String snapshot = snapshotUpdateString.substring(1, snapshotUpdateString.length() - 1);
parseSaveSsUpdateData.parseAndSave(snapshot);
snapshotUpdateString = new StringBuilder("");
}
else snapshotUpdateString.append(receivedMessage);
}
在队列中,消息越来越多,所以我再添加一个消费者。现在消费者是两个。
如果消息很大,则在两个part() 中接收到单个消息给不同的消费者。如何使消息完成消息。
在多个消费者中,我使用了监听器。使用多个消费者时可以同步接收消息吗?
【问题讨论】: