Zookeeper-集群介绍与核心理论

news2024/11/23 4:25:15

Zookeeper集群

  • 4.Zookeeper集群
    • 4.1) 介绍
    • 4.2) 核心理论

4.Zookeeper集群

4.1) 介绍

Leader选举:

  • Serverid:服务器ID。比如有三台服务器,编号分别是1,2,3。编号越大在选择算法中的权重越大。
  • Zxid:数据ID。服务器中存放的最大数据ID.值越大说明数据 越新,在选举算法中数据越新权重越大。

在Leader选举的过程中,如果某台ZooKeeper 获得了超过半数的选票, 则此ZooKeeper就可以成为Leader了。

4.2) 核心理论

在ZooKeeper集群服中务中有三个角色:

  • Leader 领导者:
    • 1.处理事务请求
    • 2.集群内部各服务器的调度者
  • Follower 跟随者:
    • 1.处理客户端非事务请求,转发事务请求给Leader服务器
    • 2.参与Leader选举投票
  • Observer 观察者:
    • 1.处理客户端非事务请求,转发事务请求给Leader服务器

在这里插入图片描述

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【力扣每日一题】2023.9.24 LRU缓存

目录 题目: 示例: 分析: 代码: 题目: 示例: 分析: 这又是一道程序设计类的题目,要我们实现LRU缓存的get和put操作。 简单说一下LRU缓存是什么,在我看来就是实用主义…

2023年kali linux安装中文输入法

apt-get install fcitx 安装输入法框架 apt-get install fcitx-googlepinyin 安装谷歌输入法 reboot ,重启系统重启之后右上有个小键盘点击里面的配置 添加google输入法 把Google pinyin上移置顶 验证输入法【CtrlSpace 切换输入法】

vue3 - Element Plus暗黑模式适配、切换及自定义颜色

GitHub Demo 地址 在线预览 Element Plus 2.2.0 版本开始支持暗黑模式,启用方式参考 Element Plus 官方文档 - 暗黑模式 demo通过Element Plus和VueUse 的 useDark 方法实现具有自动数据持久性的响应式暗黑模式。 安装 npm install element-plus --save npm in…

【owt】vs2022 + v141 : 查看WINDOWSSDKDIR

confmfc改为vs2022 + v141 构建 去掉这几个boost库,一样可以链接ok libboost_system-vc141-mt-sgd-x32-1_67.lib libboost_date_time-vc141-mt-sgd-x32-1_67.lib libboost_random-vc141-mt-sgd-x32-1_67.libSDK不在2022或者2017 里面? WINDOWSSDKDIR 在哪里? ##

设计模式之观察者(发布订阅)模式

观察者模式定义了一种一对多的依赖关系,让多个观察者对象同事监听某一个主题对象。这个主题对象在状态发生变化时,会通知所有观察者对象,使它们能够自动更新自己 class Program{static void Main(string[] args){ConcreteSubject concreteSu…

[管理与领导-101]:IT人对高情商的误解?什么是高情商?

目录 前言: 一、人的心理架构 1.1 心理的基本过程 1.2 心理架构 1.3 冰山模型 1.4 IT人不同角度看人的能力层次 二、什么是智商和专业技能 2.1 什么是智商 2.2 什么是专业技能:表层 2.3 IT技术人员的智商和专业技能的重要性 2.4 IT技术人员的…

H.264编码

1.为什么要对视频进行编码 视频是连续的图像序列,由连续的帧构成,一帧即为一幅图像,由于人眼的视觉暂留效应,当帧序列以一定的速率播放时,我们看到的就是动作连续的视频,这么多连续的图像数据如果不经过编码…

在python3上使用pyautogui模拟鼠标键盘操作删除垃圾邮件

在PyPI The Python Package Index网站上搜索pyautogui,可以看到最新版本python3可用,本机环境:win7 64位,python3.8.10。之前写过一篇python2的文章,参考用python使用pyautogui库实现按键精灵模拟鼠标键盘找图的功能_…

如何看待unity新的收费模式

Unity的由来: Unity 是一款跨平台的游戏引擎,由 Unity Technologies 公司开发和维护。Unity 的起源可以追溯到 2002 年,当时 Unity Technologies 创始人之一的 David Helgason 在丹麦创建了一个名为 Over the Edge Entertainment 的游戏开发…

GLTF编辑器教你区分自发光贴图和光照贴图

什么自发光贴图 自发光贴图(Emissive Mapping)是一种用于在计算机图形学中模拟自发光效果的技术。它可以将光源直接嵌入纹理贴图中,以模拟物体表面具有发光效果的材质。 传统的纹理贴图只能模拟物体表面的颜色和纹理,无法模拟物体…

【Unity3D赛车游戏制作】开始界面场景搭建

👨‍💻个人主页:元宇宙-秩沅 👨‍💻 hallo 欢迎 点赞👍 收藏⭐ 留言📝 加关注✅! 👨‍💻 本文由 秩沅 原创 👨‍💻 收录于专栏:Uni…

【计算机网络笔记二】网络层

IP 地址分类和子网掩码 IPv4 地址—简称 IP 地址,IP 地址由 32 位比特组成 IP地址现在由因特网名字和数字分配机构 ICANN(Internet Corporation for Assigned Names and Numbers)进行分配,IP地址的作用:用于网络寻址&…

基于Java的酒店管理系统

博主主页:猫头鹰源码 博主简介:Java领域优质创作者、CSDN博客专家、公司架构师、全网粉丝5万、专注Java技术领域和毕业设计项目实战 主要内容:毕业设计(Javaweb项目|小程序等)、简历模板、学习资料、面试题库、技术咨询 文末联系获取 项目介绍…

【pytest】 参数化@pytest.mark.parametrize

1.创建 test_parametrize.py 通过 pytest.mark.parametrize 方法设置参数 import pytestimport math#pytest参数化 pytest.mark.parametrize("base,exponent,expected", # 参数变量名称# 每个元组都是一条测试用例测试数据[(2,2,4),(3,3,9),(1,9,1),(0,9,0)],i…

为什么网络安全缺口很大,而招聘却很少?学网络安全真的没有前途吗?

2020年我国网络空间安全人才数量缺口超过了140万,就业人数却只有10多万,缺口高达了93%。这里就有人会问了: 1、网络安全行业为什么这么缺人? 2、明明人才那么稀缺,为什么招聘时招安全的人员却没有那么多呢&#xff1…

多线程进阶学习笔记

文章目录 多线程进阶学习前言1、线程的状态1.1 线程状态相关介绍1.2 状态切换演示示例一示例二示例三 2、线程池2.1 线程池的实现2.2 JDK中的线程池2.2.1 Executors2.2.2 ThreadPoolExecutor2.2.3 线程池的工作原理2.2.4 任务拒绝策略 3、volatile关键字3.1 可见性问题3.2 JMM3…

Learn Prompt-Prompt 高级技巧:HuggingGPT

HuggingGPT是一个 Agent 框架,利用 ChatGPT 作为任务规划器,根据每个模型的描述来选择 HuggingFace 平台上可用的模型,最后根据模型的执行结果生成总结性的响应。这个项目目前已在 Github 上开源,并且有一个非常酷的名字叫做 JARV…

【5G PHY】物理层逻辑和物理天线的映射

博主未授权任何人或组织机构转载博主任何原创文章,感谢各位对原创的支持! 博主链接 本人就职于国际知名终端厂商,负责modem芯片研发。 在5G早期负责终端数据业务层、核心网相关的开发工作,目前牵头6G算力网络技术标准研究。 博客…

MQ - 01 消息队列发展史MQ通用架构

文章目录 导图PreMQ 发展史消息队列的发展脉络MQ选型考虑因素消息 和 流消息队列的架构和功能什么情况下会使用消息队列?架构和功能的基本概念架构层面的基本概念功能层面的基本概念4款主流消息队列的区别和建议对比图导图 Pre MQ - 闲聊MQ一二事儿

字符串的大小(补充)

字符串大小 strlen对char b[ ] { ‘a’,‘b’,‘c’};不知道 ’\0‘在哪里&#xff0c;读取的是一个字符串 #include <iostream> using namespace std; int main() {char a[] { "abcde" };char b[] { a,b,c};cout << sizeof(a)/sizeof(a[0]) <&l…