11

我需要队列来执行不重复政策。可能吗?如果是这样,如何?(我已经搜索了几个小时......)

编辑:

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 语句是相当无可争议的。

任何想法,除了改变他们的代码?

4

1 回答 1

1

ActiveMQ 具有内置的重复消息检测功能 - 您如何定义重复消息?如果副本具有相同的 messageId - 它应该被丢弃

于 2009-12-30T15:10:30.010 回答