【发布时间】:2014-03-20 01:47:35
【问题描述】:
我们正在使用 WSO2 ESB 对 ActiveMQ 进行直通代理。看起来 WSO2 将为每个请求使用一个新连接,这在单台机器上为我们提供了低于预期的吞吐量(500 多个并发用户)。在深入研究文档后,我们发现您可以将缓存与 JMSSender 配置一起使用。这确实通过在生产者级别缓存(包括连接和会话缓存)增加了吞吐量,但缺点是如果 Activemq 机器被反弹,那么 WSO2 将不会重新连接,要使其重新连接,则必须打开缓存关闭,因此我们无法使用它。
我很惊讶在 WSO2 ESB 中找不到任何 ActiveMQ 连接池设置。 WSO2 ESB 的 ActiveMQ 连接池是否真的没有任何配置,或者我们遗漏了一些明显的东西。创建您自己的连接池工厂是这里唯一的选择吗?
我们的配置: WSO2 ESB 4.8.0 在自己的机器上,ActiveMQ 5.9 在自己的机器上
附言 我们知道生产者和 activemq 的优化并已应用它们,在代理上使用 nio 协议,在生产者和代理上配置传输级别参数,在同一台机器上使用 vm:/ 和 WSO2 和 ActiveMQ,虽然这确实显着增加了吞吐量,但没有不要把我们带过头。我们真的需要弄清楚如何进行连接池。我们期望每秒处理 10+k 条消息,其中包含 1.5k 条消息的负载。
感谢您的所有帮助。
【问题讨论】:
-
您的问题解决了吗?我在这里有点类似的问题..
-
不,我们放弃了 WSO2 ESB,转而使用 Tomcat 和 ActiveMQ。