几天后,ActiveMQ消费者放缓

时间:2016-09-18 15:27:02

标签: performance activemq kahadb

我们是ActiveMQ设置,包含所有默认设置。它的经纪人网址就像failover:(tcp://host1,tcp://host2,tcp://host3)?randomize=false

我们有2个消息队列,生产者发布持久性消息。

消息通常有稳定的流量,但是当市场开放时,消息将会持续近2个小时。此设置可以正常工作2-3天,然后消费者在处理消息时会变慢,我们会看到队列构建。

消费者执行以下步骤:

  1. 转换消息。
  2. 处理它
  3. 添加到缓存和数据库。
  4. Prefetch size是1000。

    以下是一些观察结果:

    1. 消费者处理似乎不是一直存在的问题。
    2. 看起来ActiveMQ经纪人在处理过程中变慢,但我没有证据
    3. 我们观察到,在3台主机中,只有主机1和2处理大部分消息。
    4. 关于如何解释这种缓慢的任何想法?

      编辑:

      进一步分析了这一点,发现Kahadb存储[Persistent消息存储在代理商的Kahadb中,当消费者放慢速度时达到100%存储空间。 我可以理解,当存储达到100%时生产者被阻止但为什么消费者会放慢速度?是因为Kahadb在此期间可能会变慢并且提取相当于预取大小的消息需要更多?

0 个答案:

没有答案