Zookeeper初始(一)
量大,服务器压力大。需要用到分布式,集群。
问题1:三台机器,一个请求如何落到一台机器上?如何协调工作
问题2:集群如何选取leader?
问题3:既然是分布式,集群,一个请求只能有一台机器接接收并处理,其他机器如何同步消息?
问题4:同时竞争资源如何让一个机器执行?
解答:
问题1:三台机器,一个请求如何落到一台机器上?
zookeeper 解决了各服务之间协调工作的内容如下图:

问题2:集群如何选取leader?
1 leader-follower-observer
2 leader选取 :?有哪些算法?
问题3:既然是分布式,集群,一个请求只能有一台机器接接收并处理,其他机器如何同步消息?
3 数据同步怎么办?事务请求走leader,非事务走所有节点,增删改有leader节点处理,处理完同步到非leader;使用了节点zab协议(原子广播协议):数据同步,leader选取,原子广播。
zookeeper:文件类型的树形目录结构
有序节点:顺序递增
持久化节点:永久存储
临时节点:回话结束即删除节点,不能有字节点,存在冲突:比如 临时节点下在建立了持久节点怎么办,如果在建立个临时节点,生命周期不一样怎么办?
树形结构: 每个节点是 key-value
zookeeper 应用:
1分布式锁:(节点抢占,顺序节点)
1 节点抢占 :同级节点是唯一的(同时创建同一个节点,多个应用创建肯定只有一个成功),失败的节点怎么办?
watcher:客户端可以监控某一个节点的变化 监听方式3中:get exists getchildren 设置监控: get /mic true 对mic 节点监控 监控删除事件
如 app2可以watcher app1新建的节点事件,如果app1新建的节点有修改会给所有监控对象app2,app3发通知(只触发一次,如果失败则丢掉事件)会发生 惊群问题?会触发所有节点
2 顺序节点:创建顺序节点,最小节点获取锁 1 2 3 ;2监控1 3监控2 ,每个节点监控上一个节点
2 服务注册:
各个服务通信:rpc协议远程过程服务调用
rpc 协议有 hession,dubbo,webservice 框架
服务直接通信用到:序列化/反序列化,反射

Zookeeper初始(一)的更多相关文章
- Zookeeper基础教程(六):.net core使用Zookeeper
Demo代码已提交到gitee,感兴趣的更有可以直接克隆使用,地址:https://gitee.com/shanfeng1000/dotnetcore-demo/tree/master/Zookeep ...
- zookeeper篇-zookeeper客户端和服务端的基础命令
点赞再看,养成习惯,微信搜索「小大白日志」关注这个搬砖人. 文章不定期同步公众号,还有各种一线大厂面试原题.我的学习系列笔记. 前提:我把zookeepee安装在了服务器/usr/local/java ...
- dubbo学习之服务提供者
1.简介 这里主要记录如何搭建一个spring框架,提供一个dubbo服务,包括详细的步骤. 2.详细步骤 2.1 项目目录结构 2.2 创建maven项目 new --> Web Projec ...
- 初始zookeeper与集群搭建实例
zookeeper是什么 Zookeeper,一种分布式应用的协作服务,是Google的Chubby一个开源的实现,是Hadoop的分布式协调服务,它包含一个简单的原语集,应用于分布式应用的协作服务, ...
- 【分布式】Zookeeper数据与存储
一.前言 前面分析了Zookeeper对请求的处理,本篇博文接着分析Zookeeper中如何对底层数据进行存储,数据存储被分为内存数据存储于磁盘数据存储. 二.数据与存储 2.1 内存数据 Zooke ...
- 【分布式】Zookeeper的Leader选举
一.前言 前面学习了Zookeeper服务端的相关细节,其中对于集群启动而言,很重要的一部分就是Leader选举,接着就开始深入学习Leader选举. 二.Leader选举 2.1 Leader选举概 ...
- 【分布式】Zookeeper与Paxos
一.前言 在学习了Paxos在Chubby中的应用后,接下来学习Paxos在开源软件Zookeeper中的应用. 二.Zookeeper Zookeeper是一个开源的分布式协调服务,其设计目标是将那 ...
- Zookeeper开源客户端框架Curator简介
Curator是Netflix开源的一套ZooKeeper客户端框架. Netflix在使用ZooKeeper的过程中发现ZooKeeper自带的客户端太底层, 应用方在使用的时候需要自己处理很多事情 ...
- ZooKeeper个人笔记客户端watcher和AsycCallback回调
每一个Watcher具有如下属性: 1.KeeperState 2.EventType 3.path 4.process(WatchedEvent evnet)回掉方法 Watcher干嘛的?用户监听 ...
随机推荐
- kali在vbox上运行设置共享文件夹
mount -t vboxsf VBoxShared /root/Desktop/vbox 0x00 使用共享文件夹的前提 需要自行安装增强功能:https://jingyan.baidu.com/a ...
- 安卓系统广播暴露设备信息-Android System Broadcasts Expose Device Information
Android device details are being exposed to running applications via Wi-Fi broadcasts in the mobile ...
- .Net Core部署IIS
1.环境安装 https://dotnet.microsoft.com/download/dotnet-core 下载Runtime & Hosting Bundle包安装,iis模块会出现支 ...
- 光圈,快门, 曝光,焦距, ISO,景深。
光圈,快门, 曝光,焦距, ISO,景深. ISO(感光度)与图片质量 ISO -- 感光度,是一个曝光率极高的词,我们在超市买饼干的时候就可能会看见包装袋上写:本公司已通过ISO9001质量体系认证 ...
- 安装Oracle Grid的过程中用到的几个小技巧
1.利用文件来模拟块设备 在grid的安装教程中有一步是 provision the disk devices for use with ASM Filter Driver.但是如果我们没有多个磁盘怎 ...
- python安装setup.py问题
一:python下setuptools安装( No module named setuptools 解决方案) 1. 下载:在它的官网可以下载到安装包:https://pypi.python.org/ ...
- tomcat+nginx实现
这里采用tomcat安装包 tomcat 版本说明: 9.0.17 nginx 版本说明: 1.14.2 jdk 版本说明: 1.8.0 创建目录 [root@web02 /]# m ...
- UDP广播 与 TCP客户端 --服务端
随着倒计时的响声,自觉无心工作,只想为祖国庆生. 最近有遇到过这样一个问题,将摄像头识别的行人,车辆实时显示在客户端中.有提供接口,会以Json的数据的形式将实时将识别的对象进行Post提交.所以我们 ...
- 三月pat(转)
转自https://blog.csdn.net/weixin_40688413/article/details/88082779 担心别人删除了就找不到了.因为九月要考. 7-1 Sexy Prime ...
- InputStream字节输入流
1.字节输入流——硬盘中数据写出到内存中供解析使用: 根据文件存储原理,8位二进制组成为一个字节,换算后的数值在0-127则查询ASCII码表,其他则查询系统默认表,如简体中文查询GBK表: 2.Fi ...