2016年2月3日星期三

AMQ_006:单机环境下 AMQ 单节点 Point-to-Point 开箱性能指标

环境:OS X EI Capitan 10.11.3 + JBoss AMQ 6.2.1 + JMeter 2.13

JBoss AMQ 6.2.1使用的版本是apache-activemq-5.11.0.redhat-621084。
本测试不做任何结论性的总结,只是先有个感性认识,以备将来有案可查。


1. 硬件环境
型号名称:    MacBook Pro
型号标识符:    MacBookPro11,3
处理器名称:    Intel Core i7
处理器速度:    2.3 GHz
处理器数目:    1
核总数:    4
L2 缓存(每个核):    256 KB
L3 缓存:    6 MB
内存:    16 GB
Boot ROM 版本:    MBP112.0138.B16
SMC 版本(系统):    2.19f12

2. 测试
测试按照四种消息尺寸:1k、10k、100k、1m 。每种尺寸测试非持久化和持久化(leveldb 和 kahadb)三种情况。
使用JMeter 进行测试,每个测试计划,启动 50 个JMS Point-to-Point 线程,运行120秒。

在1.4G Hz~3GHz 的CPU 、1GB 内存的 JMeter 客户端上,可以处理线程 100~300。但是Web Service 例外。XML处理是 CPU 运算密集的,会迅速消耗掉所有的CPU 。一般来说,以XML技术为核心的应用系统,其性能将是普通Web 应用的 10%~25% 。另外,如果所有负载由一台机器产生,网卡和交换机端口都可能产生瓶颈,所以一个JMeter 客户端线程数不应超过100 。

测试计划请参看《测试ActiveMQ的Point-to-Point 》。


消息尺寸
1k
10k
100k
1m
非持久
6405.3/s
4663.3/s
1494.6/s
150.0/s
leveldb
3237.6/s
2543.5/s
946.9/s
119.5/s
kahadb
3294.0/s
2732.2/s
959.6/s
110.8/s

(1)非持久比持久化的TPS要高一倍左右。
(2)leveldb和kahadb相比,kahadb略好。

2.1 1k(非持久化、leveldb、kahadb)





2.2 10k(非持久化、leveldb、kahadb)





2.3 100 k(非持久化、leveldb、kahadb)





2.4 1m(非持久化、leveldb、kahadb)



没有评论: