ActiveMQ Artemis中5条同_AMQ_SCHED_DELIVERY与_AMQ_LVQ_NAME的调度消息会怎样?
关于ActiveMQ Artemis定时消息与Last Value Queue的行为说明
当5条消息的_AMQ_SCHED_DELIVERY(定时投递时间)和_AMQ_LVQ_NAME(LVQ标识)完全相同时,最终只会投递最新发送的那条消息,具体逻辑如下:
- Last Value Queue(LVQ)的核心规则是:只要新消息的
_AMQ_LVQ_NAME与队列中已存在的消息一致,就会直接替换掉旧消息——不管旧消息是待触发的定时消息还是普通消息。 - 每发送一条符合条件的新消息,队列里之前同
_AMQ_LVQ_NAME的定时消息都会被立即移除,不会等到定时时间到来。 - 当到达
_AMQ_SCHED_DELIVERY指定的时间点时,队列里只剩下最后那条最新的消息,自然只会投递这一条。
内容的提问来源于stack exchange,提问作者CallanSM
相关产品推荐
相关产品推荐

