基准测试
基于benchmarking tool1
2
3INFO Performance IntByteMapTest
Total throughput 100.00% 7,948,805 ops 128,179.66 ops/s
Agent C_A1 100.00% 7,948,805 ops 128,179.66 ops/s
结论
客户端测试
- serive为40服务器docker
- client为本地java
- 单线程写入对象1万次
- 多线程10,并发
结论
- 单线程时,puts:56/s,server并发处理
- 多线程10个时,puts:496/s,server并发处理
- 处理延迟,0.02ms
优势
- 基于Java开发,部署简单、无主从、自动扩展
- 基础java集合框架,可本地使用,解决分布式缓存问题
- 提供全局id、消息、队列、分布式锁等分布式服务常见工具
- 有manager-ui
- spring boot/cloud默认已集成
劣势
- 中文材料较少
基准测试方法
下载simulator
- 下载安装包至服务器或本地
- 安装包:https://download.hazelcast.com/simulator/hazelcast-simulator-0.9.10-dist.tar.gz
- 源码:https://github.com/hazelcast/hazelcast-simulator.git
安装与测试
- ./hazelcast-simulator-0.9.8/bin/simulator-wizard –install
- 测试是否成功。新建一个teminor,输入命令:simulator-wizard –help
执行
1 | simulator-wizard --createWorkDir tests |
等待console输出结果
修改测试条件
cat test.properties1
2
3IntByteMapTest@class = com.hazelcast.simulator.tests.map.IntByteMapTest
IntByteMapTest@threadCount = 10
IntByteMapTest@putProb = 0.1
测试类下载源码可见,默认com.hazelcast.simulator.tests.map.IntIntMapTest
注意
- 测试模拟器自带Hazelcast,无需安装配置
- 本地不要启动Hazelcast,否则端口冲突,无法成功
否则有以下错误:1
2FATAL [C_A1] Failed to start Worker: Failed to start Worker
FATAL [C_A1] Failed to start Worker: Failed to start Worker