zookeeper的动态扩容

附属意义的扩容:扩容的新增节点为观察者observer

1.观察者概念:

a.在zookeeper引入此新的zookeeper节点类型为observer,是为了帮助处理投票成本随着追随者增加而增加的问题并且进一步完善了zookeeper的可扩展性

b.观察者不参与投票,他只监听投票的结果,但是观察者可以和追随者一样运行;也即 客户端可以连接到观察者状态的服务器发起读取和写入的请求,会像追随者一样转发请求到领导者,而观察者只是简单的等待监听投票的结果

c.观察者数量不会影响到投票性能,因此观察者不是zookeeper集群整体的主要节点,观察者产生故障或者从集群中断开连接都不会影响到集群的性能

2.意义:

a.在实际使用中,观察者可以连接到比追随者更不可靠的网络;

b.事实上,观察者可以用于从其他数据中心和zookeeper服务器通信

3.优点:

a.提升集群的读性能,对写性能影响很小

b.可以将observer部署在异地机房,读请求就近发起,降低延迟

4.缺点:

a.对写操作有一定的影响:观察者所在的服务器处于无监控状态,无法保证数据都同步成功了,可能会因为网络原因造成一些写入请求被丢弃等

b.如果observer部署异地机房,写同步的延迟可能会增加

c.源集群的稳定性没有提高

5.observer扩容配置:

a.假设扩容的observer服务器为server.6 & server.7

b.重新在bigdata01上解压并重命名为observerZK01 || observerZK02

c.并且在conf/zoo.cfg文件中进行以下配置:

i.dataDir=/home/software/observerZK01/tmp||dataDir=/home/software/observerZK02/tmpii.clientPort= 2184||clientPort=2185

iii.添加声明当前zk服务器类型为observer server的属性:

peerType=observer

iv. 在构建集群地址时,需要将配置为观察者的主机后添加上观察者标记:observer

server.1=192.168.88.182:2888:3888server.2=192.168.88.183:2888:3888server.3=192.168.88.184:2888:3888server.4=192.168.88.182:2889:3889server.5=192.168.88.182:2890:3890server.6=192.168.88.182:2891:3891:observerserver.7=192.168.88.182:2892:3892:observer

a.分别在tmp目录下新建并设置 myid编号为 6 || 7

d. 启动服务器 并且查看此时服务器的状态是否为observer:

在这里插入图片描述

e. 连接到observer服务器的客户端: ./observerZK02/bin/zkCli.sh -server slave02:2185
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/13509.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

django要在books接口中不同数据的新类

要在books接口中添加一个处理不同数据的新类,并希望通过 Django 管理后台添加和显示这些数据,需要对三个文件进行修改 1.在 models.py 文件中添加新的模型类。 例如,假设您要添加一个名为 Category 的新模型: from django.db i…

记一次 Visual Studio 2022 卡死分析

一:背景 1. 讲故事 最近不知道咋了,各种程序有问题都寻上我了,你说 .NET 程序有问题找我能理解,Windows 崩溃找我,我也可以试试看,毕竟对 Windows 内核也知道一丢丢,那 Visual Studio 有问题找…

黑芝麻智能科技、上海紫先面试(部分)(未完全解析)

黑芝麻智能科技 Hystrix可以限流吗?客户端限流,是限制对下游(被调用方)的访问,不是对本服务限流。从HystrixCommand的.withExecutionIsolationStrategy(ExecutionIsolationStrategy.SEMAPHORE)也可以看出来&#xff0c…

English Learning - L3 作业打卡 Lesson8 Day59 2023.7.4 周二

English Learning - L3 作业打卡 Lesson8 Day59 2023.7.4 周二 引言🍉句1: I started snowboarding, then I went back to work, then I went back to school.成分划分连读爆破语调 🍉句2: And just this past February, I won two back to back World C…

具有音调控制功能的25W混合式Hi—Fi放大器

现代电子技术应用中电子管的使用虽然已经较少,但由于电子管有晶体管不可替代的一些优越特性,所以在部分领域特别是音响电路中还受到人们的亲睐。这是一款由“靓”音电子管和音响集成电路联合组成的混合放大器。该放大器由电子管作前级,音响专…

设计模式--------创建型模式

创建型模式 用于描述“怎样创建对象”,它的主要特点是“将对象的创建与使用分离”。GoF(四人组)书中提供了单例、原型、工厂方法、抽象工厂、建造者等 5 种创建型模式。 1.单例设计模式 单例模式(Singleton Pattern&#xff09…

day3 QT对话框

目录 QDialog 标准对话框(Standard Dialogs): 内置对话框(Built-in Dialogs): 自定义对话框(Custom Dialogs) 示例 myqdialog.h widget.h myqdialog.cpp widget.cpp QDialog Q…

单位列表单列出来,假(封装)组件

效果图&#xff1a; 因为每个页面都用到这个单位&#xff0c;所以把单位列表单列出来&#xff0c;假装是个封装的组件&#xff0c;在其他页面直接用。 源码&#xff1a; <template><div style"height: 48rem;overflow-y: scroll"><h4>单位列表<…

九、HTML中的定位

1、定位 position static 默认值 没有使用定位 relactive 相对定位 absolute 绝对定位 fixed 锚定 标准文档流 标准文档流 从上到下&#xff0c;从左向右&#xff0c;依次显示网页中的每一个元素 元素分类 行内元素 依次一个挨着一个显示 块级元素 独占一行 static 定位 以…

Android 曲线覆盖图

看图 样例代码 layout.xml <com.XXXXX.utils.GraphBendLineandroid:id"id/ghost_view"android:layout_width"200dp"android:layout_height"200dp"android:layout_margin"40dp"app:node_bar_line_color"#F9FEFD"app:nod…

django-vue-admin curd_demo 快速crud教程

django-vue-admin curd_demo 快速crud教程 快速CRUD开发教程&#xff1a;https://bbs.django-vue-admin.com/article/9.html 如何在 env.py 文件配置Mysql数据库&#xff1a;https://bbs.django-vue-admin.com/question/4.html 导入导出配置教程&#xff1a;https://bbs.djang…

Python 中的二维插值

本文展示了如何在 Python 中进行插值&#xff0c;并研究了不同的 2d 实现方法。 我们将讨论用于双变量插值的有用函数&#xff0c;例如 scipy.interpolate.interp2d、numpy.meshgrid 和 Python 中使用的用于平滑/插值 (RBF) 的径向基函数。 我们将使用 SciPy 和 Numpy 库实现插…