activemq性能问题和预防措施

时间:2011-09-18 18:20:16

标签: performance jms scalability activemq

我将在我的一个项目中首次使用ActiveMQ(持久消息的主题)。我已经读过,持久消息强制限制每秒的消息数量级。我应该注意哪些其他因素(例如缓慢的消费者)限制了activemq的规模和性能特征以及应该密切监控哪些指标以及所有地狱破坏的价值是什么。

我不希望现在在ActiveMQ中每秒推送超过一千个事件。

2 个答案:

答案 0 :(得分:9)

这里有一些提示......

  • 从默认值
  • 增加systemUsage限制
  • 从默认值
  • 增加JVM堆大小
  • 如果使用KahaDB,请考虑将enableJournalDiskSyncs设置为false(显着提高吞吐量)或最好使用新的LevelDB
  • 了解producer flow control并考虑禁用(经常完成)
  • 考虑使用virtual topics(而不是持久主题消费者)
  • 了解prefetch-limit并根据需要进行调整

答案 1 :(得分:2)

我遇到的两个与activeMQ有关的具体问题:

1)每个队列都需要调整内存限制。除非您更改配置,否则ActiveMQ不会填满您的堆。因此,您需要设置-Xmx并更改配置以使用更多内存。

2)与#1相关,默认情况下,发件人(客户端)会在达到限制时阻止。在较新的版本中,有一个设置可以避免这种情况,而是抛出异常。请参阅http://activemq.apache.org/producer-flow-control.html