我需要队列来强制执行不重复的策略。可能吗?如果是这样,怎么样? (我一直在谷歌搜索几个小时......)
编辑:
ActiveMQSession实现有以下几行:
// transform to our own message format here
ActiveMQMessage msg = ActiveMQMessageTransformation.transformMessage(message, connection);
// Set the message id.
if (msg == message) {
msg.setMessageId(new MessageId(producer.getProducerInfo().getProducerId(), sequenceNumber));
} else {
msg.setMessageId(new MessageId(producer.getProducerInfo().getProducerId(), sequenceNumber));
message.setJMSMessageID(msg.getMessageId().toString());
}
ActiveMQMessageTransformation是可插入的(您可以设置它),但是以下if语句是一个相当无可争议的。
任何想法,除了更改他们的代码?
答案 0 :(得分:1)
ActiveMQ内置了重复的邮件检测 - 您如何定义重复?如果副本具有相同的messageId - 它应该被丢弃