https://github.com/maxant/share/blob/master/DBJMSPerf/src/JMSWriter.java处的代码将BytesMessages写入本地ActiveMQ服务器。
我每秒只管理大约200条消息(每条消息<5毫秒)。
使用https://github.com/maxant/share/blob/master/DBJMSPerf/src/DBWriter.java之后的代码,它遵循非常相似的模式,我能够每秒向数据库写入超过500条消息。
在这两种情况下,我自己处理事务,因为我想在每条消息之后模拟提交,然后重新使用连接,因为我想模拟连接池。
我在JMS示例中使用持久交付模式,因为我正在尝试分析具有高可用性的设计 - 消息可能不会丢失。
在http://activemq.apache.org/performance.html,他们引用的信息速度比我能快十倍。
如何改善ActiveMQ服务器的性能?
答案 0 :(得分:0)
当您为每个发送的邮件重新创建所有JMS资源时,您需要使用连接池来加速性能,这很慢。
基于JMS的连接池通常内置会话/使用者/生产者池,因此您可以保持代码不变。
Apache ActiveMQ有一个可以使用的池,还有一个来自Spring Framework。