【问题标题】:Pause/resume feature of ActiveMQ not resuming properlyActiveMQ 的暂停/恢复功能无法正常恢复
【发布时间】:2015-10-05 06:28:55
【问题描述】:

新发布的 ActiveMQ (5.12) 现在支持暂停和恢复向队列消费者传递消息,这非常有用。 问题是,当您恢复消息传递时,

  1. 如果有消息进入队列:代理会立即将待处理的消息发送给消费者,完全可以。
  2. 但是如果没有消息进入队列:队列中的未决消息将不会发送给消费者,直到对队列执行过期检查(默认为30秒,可以由 expireMessagesPeriod 属性控制),未过期的消息将在之后发送给消费者。

显然我们可以更改 expireMessagesPeriod 来限制这种延迟,但是当您需要一个毫秒精度时,每毫秒执行一次过期检查是没有意义的。

有没有办法强制队列恢复后立即开始发送消息?

【问题讨论】:

  • 所以您正在使用暂停/恢复来处理需要毫秒精度的事情?那很有意思。也许您应该在 ActiveMQ 问题跟踪器上创建一个 JIRA 作为此问题的功能请求?
  • 是的,而且非常酷。好的,我刚刚在 JIRA 上添加了一个条目here

标签: activemq resume pause


【解决方案1】:

由 ActiveMQ 团队修复的错误(详情 here)并将出现在 5.12.2 版本中。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2014-02-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-03-17
    相关资源
    最近更新 更多