zookeeper压力测试:性能对比(3个节点,5个节点,7个节点 创建节点、删除节点、设置节点数据、读取节点数据性能及并发性能)
测试结果如下:
五次测试三节点结果:
创建100W节点用时:15.0秒。 66'666/s
删除100W节点用时:13.8秒。 72'500/s
设置100W节点用时:90.0秒。 11'111/s
读取100W节点用时:50.5秒。 20'000/s
五次测试五节点结果:
创建100W节点用时:15.5秒。
删除100W节点用时:14.4秒。
设置100W节点用时:93.4秒。
读取100W节点用时:50.6秒。
五次测试七节点结果:
创建100W节点用时:15.3秒。
删除100W节点用时:14.0秒。
设置100W节点用时:95.4秒。
读取100W节点用时:50.5秒。
测试性能对比结果
ZooKeeper 在此次测试中, 3节点、5节点、7节点并没有特别大的差异。 显示了 ZooKeeper 的稳定性。非常适用于做大数据协调服务。
Watcher 压力测试:高并发下,watcher的数据是否丢失
测试结果如下:(红色监听其实为 Client 的创建删除的 watch 通知速度。这么慢是因为 1等待client 关闭,2 产生watch 3 watch通知)
五次测试三节点结果:
删除1000节点watch用时:5.6 秒,全部成功到达。
设置1000节点用时:5.6 秒,全部成功到达。
创建1000节点用时:5.6 秒,全部成功到达。
五次测试五节点结果:
删除1000节点watch用时:5.5 秒,全部成功到达。
设置1000节点用时:5.8 秒,全部成功到达。
创建1000节点用时:5.8 秒,全部成功到达。
五次测试七节点结果:
删除1000节点watch用时:5.4 秒,全部成功到达。
设置1000节点用时:5.5 秒,全部成功到达。
创建1000节点用时:5.9 秒,全部成功到达。
Watcher 分布式监听锁:高并发下,watcher 锁的效率
测试结果如下 10W级别:
抢占锁: 23毫秒左右一个
链式监听 : 13 毫秒一个(过快的请求将会导致失败锁,失败锁将重新排队。 如果请求再快。如(13毫秒以下时 越小锁失败越高 且大量浪费资源。)
测试性能对比结果
Watcher测试中 3节点、5节点、7节点并没有特别大的差异。这都得益于 Watcher 通知的轻量特性。
God has given me a gift. Only one. I am the most complete fighter in the world. My whole life, I have trained. I must prove I am worthy of someting. rocky_24