设为首页 收藏本站
查看: 632|回复: 0

[经验分享] ZooKeeper的一个性能测试

[复制链接]

尚未签到

发表于 2019-1-8 07:26:04 | 显示全部楼层 |阅读模式
  3台ZooKeeper服务器。8核64位jdk1.6;log和snapshot放在不同磁盘
场景一
  同一个目录下,先createEPHEMERALnode,再delete;create和delete各计一次更新。没有订阅。
一个进程开多个连接,每个连接绑定一个线程,在多个path下做上述操作;不同的连接操作的path不同
  测试结果数据汇总如下:
dataSize(字节)totalReqrecentTPSavgTPSrecentRspTimavgRspTimfailTotal
409620371585
10247677280
2551472382
说明总请求数实时TPS实时响应时间(ms)
场景二
  一个进程开多个连接,每连接一个线程,每个连接在多个path下做下述操作;不同的连接操作的path不同
每个path有3个订阅者连接,一个修改者连接。先全部订阅好。然后每个修改者在自己的每个path下创建一个EPHEMERALnode,不删除;创建前记录时间,订阅者收到event后记录时间(eventStat);重新get到数据后再记录时间(dataStat)。共1000个pub连接,3000个sub连接,20W条数据。
结果汇总:getAfterNotify=false(只收事件,受到通知后不去读取数据);五台4核client机器
dataSize(字节)totalReqrecentTPSavgTPSrecentRspTimavgRspTimfailTotal
40968000+520左右
20481W+270左右
10241W+256左右
2551W+256左右
说明总请求数实时TPS实时响应时间(ms)
  收到通知后再去读取数据,五台4核client机器
dataSize(字节)totalReqrecentTPSavgTPSrecentRspTimavgRspTimfailTotal
eventStat40968000+1000左右
eventStat409632002200-2600
dataStat409632004000-4300
eventStat10249500400-900
dataStat10249500700-1100
eventStat2568500200-1000
dataStat2568500300-1400
说明总请求数实时TPS实时响应时间(ms)
  收到通知后再去读取数据,1台8核client机器
dataSize(字节)totalReqrecentTPSavgTPSrecentRspTimavgRspTimfailTotal
eventStat409657719604
eventStat4096555810633
dataStat4096555810743
eventStat102460009400
dataStat1024600010000
eventStat256637410050
dataStat256637410138
说明总请求数实时TPS实时响应时间(ms)
场景三
  一个进程开多个连接,每连接一个线程,每个连接在多个path下做下述操作;不同的连接操作的path不同
每个path有一个修改者连接,没有订阅者。每个修改者在自己的每个path下设置数据。
结果汇总:getAfterNotify=false(只收事件,受到通知后不去读取数据);五台4核client机器
dataSize(字节)totalReqrecentTPSavgTPSrecentRspTimavgRspTimfailTotal
409620371585
10247677280
2551472382
说明总请求数实时TPS实时响应时间(ms)
  总结
由于一致性协议带来的额外网络交互,消息开销,以及本地log的IO开销,再加上ZK本身每1000条批量处理1次的优化策略,写入的平均响应时间总会在50-60ms之上。但是整体的TPS还是可观的。单个写入数据的体积越大,响应时间越长,TPS越低,这也是普遍规律了。压测过程中log文件对磁盘的消耗很大。实际运行中应该使用自动脚本定时删除历史log和snapshot文件。




运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-660513-1-1.html 上篇帖子: Zookeeper 集群+kafka集群+kafka manager搭建 下篇帖子: 如何学习Zookeeper技术 Zookeeper入门到精通
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表