1. 测试环境
(1) 操作系统
Win7 旗舰版64位
(2) CPU
Intel(R) Core(TM) i5-3470 CPU @ 3.2GHz
(3) JDK
JDK1.6
(4) ActiveMQ
ActiveMQ5.7.0
修改配置文件/conf/activemq.xml
<persistenceAdapter>
<kahaDB directory="${activemq.data}/kahadb" indexCacheSize="100000" indexWriteBatchSize="1000" enableJournalDiskSyncs="false" journalMaxFileLength="128mb" concurrentStoreAndDispatchQueues="true" concurrentStoreAndDispatchTopics="true"/>
</persistenceAdapter>
1. 测试步骤
(1) 单个生产者发送消息
单个生产者向事务/非事务,持久化/非持久化四个队列分别插入100W条记录,统计所需要的时间.
(2) 多个生产者发送消息
单个生产者向事务/非事务,持久化/非持久化四个队列分别插入100W条记录,统计所需要的时间.
(3) 单个消费者接收消息
单个消费者向事务/非事务,持久化/非持久化四个队列分别接收100W条记录,统计所需要的时间.
(4) 多个消费者接收消息
多个消费者向事务/非事务,持久化/非持久化四个队列分别接收100W条记录,统计所需要的时间.
2. 测试报告
3.1单个生产者发送消息
(1)第一次发送
是否支持事务 | 是否支持持久化 | 测试数据 | 花费时间 | 速度 |
是 | 是 | 100W | 114s | 8771/s |
是 | 否 | 100W | 51s | 19607/s |
否 | 是 | 100W | 115s | 8695/s |
否 | 否 | 100W | 23s | 43478/s |
(2)第二次发送
是否支持事务 | 是否支持持久化 | 测试数据 | 花费时间 | 速度 |
是 | 是 | 100W | 324s | 3086/s |
是 | 否 | 100W | 62s | 16129/s |
否 | 是 | 100W | 122s | 8196/s |
否 | 否 | 100W | 26s | 38461/s |
(3)第三次发送
是否支持事务 | 是否支持持久化 | 测试数据 | 花费时间 | 速度 |
是 | 是 | 100W | 380s | 2631/s |
是 | 否 | 100W | 69s | 14492/s |
否 | 是 | 100W | 132s | 7575/s |
否 | 否 | 100W | 22s | 45454/s |
(4)第四次发送
是否支持事务 | 是否支持持久化 | 测试数据 | 花费时间 | 速度 |
是 | 是 | 100W | 421s | 2375/s |
是 | 否 | 100W | 114s | 8771/s |
否 | 是 | 100W | 186s | 5376/s |
否 | 否 | 100W | 34s | 29411/s |
3.2多生产者发送消息
待续…
3.3单个消费者接收消息
待续…
3.4多个消费者接收消息
待续…
3. 测试总结
待续…