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 通知的轻量特性。

 
 

zookeeper 性能测试的更多相关文章

  1. zookeeper节点数与watch的性能测试

    zookeeper中节点数量理论上仅受限于内存,但一个节点下的子节点数量受限于request/response 1M数据 (size of data / number of znodes) zooke ...

  2. 基于dubbo框架下的RPC通讯协议性能测试

    一.前言 Dubbo RPC服务框架支持丰富的传输协议.序列化方式等通讯相关的配置和扩展.dubbo执行一次RPC请求的过程大致如下:消费者(Consumer)向注册中心(Registry)执行RPC ...

  3. 通过dubbo暴露接口调用方法,及基于zookeeper的dubbo涉及配置文件

    现在很流行的Dubbo很多朋友都听说过吧,最近我也在看这方面的东西,分享先我的心得笔记. 先说说我们团队要做的项目框架,很简单重在实现基于zookeeper的dubbo注册. 框架:springmvc ...

  4. zookeeper运维 --【】转】

     from:http://blog.csdn.net/hengyunabc/article/details/19006911  zookeeper运维 尽管zookeeper在编程上有很多的阱陷,AP ...

  5. ZooKeeper入门

    ZooKeeper简介 ZooKeeper是一个构建在Paxos算法上的高可用的分布式数据管理与系统协调框架,提供了一系列原语集,更上层的应用可以用它来实现同步,配置管理,名称服务,Master选举, ...

  6. Kafka性能测试实例

    1.概述 在分布式实时数据流场景下,随着数据量的增长,对Kafka集群的性能和稳定性的要求也很高.本篇博客将从生产者和消费者两方面来做性能测试,针对具体的业务和数据量,来调优Kafka集群. 2.内容 ...

  7. 性能测试Jmeter压测ZooKeeper-自定义java请求

     要想通过自定义java请求来压测ZooKeeper,那么我们就需要做两件事情,第一我们需要知道java如何操作ZooKeeper,第二就是怎么能将我们写的jar包让jmeter识别,首先我们先来干第 ...

  8. ZooKeeper: 简介, 配置及运维指南

    1. 概览 ZooKeeper是一个供其它分布式应用程序使用的软件, 它为其它分布式应用程序提供所谓的协调服务. 所谓的协调服务, 是指ZooKeeper的如下能力 naming 命名 configu ...

  9. 基于zookeeper的高可用Hadoop HA集群安装

    (1)hadoop2.7.1源码编译 http://aperise.iteye.com/blog/2246856 (2)hadoop2.7.1安装准备 http://aperise.iteye.com ...

随机推荐

  1. PHP mysql_fetch_array得不到数据

    好久没写PHP了...为了数据库课设开始了PHP速成之旅... 光是简单的注册功能就坑了我好几个小时,不过万事开头难嘛...之后应该会快起来的. 先说一下昨天遇到的小坑, 我的表单是这么写的 < ...

  2. 解决vuex刷新页面数据丢失

    1.前言 vue构建的项目中,vuex的状态存储是响应式的,当vue组件从store中读取状态的时候,若store中的状态发生变化,那么相应的组件也会得到高效刷新,问题来了,vuex存储的数据只是在页 ...

  3. Node_进阶_4

    Node进阶第四天 一.传统数据库技术回顾 数据库就是存储数据的,那么存储数据用txt就行了啊,为什么要有数据库? 理由之一:数据库有行.列的概念,数据有关系,数据不是散的. 老牌数据库,比如Mysq ...

  4. 使用vue实现简单键盘,支持移动端和pc端

    常看到各种app应用中使用自定义的键盘,本例子中使用vue2实现个简单的键盘,支持在移动端和PC端使用,欢迎点赞,h5 ios输入框与键盘 兼容性优化 实现效果: Keyboard.vue <t ...

  5. 洛谷 P2279 [HNOI2003]消防局的设立 (树形dp or 贪心)

    一看到这道题就知道是树形dp 之前做过类似的题,只不过保护的范围是1 所以简单很多. 这道题保护的范围是2,就复杂了很多. 我就开始列状态,然后发现竟然有5种 然后我就开始列方程. 但是我考虑的时候是 ...

  6. 洛谷P2870 [USACO07DEC]最佳牛线,黄金Best Cow Line, Gold

    思路大概和其他的题解一样: 从当前字符串最前面,最后面选一个字典序较小的然后拉到一个新的字符串序列中,如果相同就一直往中间扫描直到发现不同为止(一个字符如果被选中之后那么就不可以再次选择了),所以我们 ...

  7. mysql中的锁表语句查看方法汇总

    mysql> show status like 'Table%'; +----------------------------+----------+ | Variable_name | Val ...

  8. 过Hard题目.周末

      # Title Editorial Acceptance Difficulty Frequency   . 65 Valid Number     12.6% Hard    . 126 Word ...

  9. uva live 2326 - Moving Tables

    把房间号映射在一条坐标上,然后排序,最后找从左到右找一次可行的计划,最后找从左到右找一次可行的计划,最后找从左到右找一次可行的计划,最后找从左到右找一次可行的计划, ............ 次数*1 ...

  10. POJ1502 MPI Maelstrom Dijkstra

    题意 给出图,从点1出发,求到最后一个点的时间. 思路 单源最短路,没什么好说的.注意读入的时候的技巧. 代码 #include <cstdio> #include <cstring ...