【发布时间】:2015-05-05 23:32:14
【问题描述】:
我有一个 wso2 ESB 与 activeMQ(持久消息传递)通信。有时,ESB 上的线程会堆积起来,因为所有线程都在等待 activeMQ 响应对其进行的各种调用。最终调用错误。
同时在 ActiveMQ 日志中,我看到很多“缓慢的 Kaha DB 访问”日志。一些例子:
- KahaDB 访问缓慢:清理耗时 5138
- KahaDB 访问速度慢:日志追加耗时:1635 毫秒,索引更新耗时 2330 毫秒
这是我们系统中的一个大问题,因为一旦 AMQ 停止响应足够快,我们就会锁定线程。似乎因为 IO/访问需要很长时间,activeMQ 停止响应我们的 ESB。由于我们继续尝试在 ActiveMQ 上排队消息(预期功能),我们打开越来越多的连接,使用越来越多的线程,直到线程被最大化。
几分钟后,我们发布的线程和 activeMQ 再次响应,但到那时对于我们的系统来说为时已晚,因为 ESB 由于备份流量和 activeMQ 冻结而失控。
有人遇到同样的问题吗?任何人都可以提供有关如何解决此问题的任何信息,我们将不胜感激。
谢谢
【问题讨论】:
标签: java wso2 activemq wso2esb