一、简介 ZooKeeper由雅虎研究院开发,后来捐赠给了Apache。ZooKeeper是一个开源的分布式应用程序协调服务器,其为分布式系统提供一致性服务。其一致性是通过基于Paxos算法的ZAB协议完成的。其主要功能包括:配置维护、域名服务、分布式同步、集群管理等。 zookeeper的官网: ...
分类:
其他好文 时间:
2020-07-07 15:38:15
阅读次数:
77
前言 我们都知道之前所做的项目大部分都是集中式,单个节点的系统,而现在随着微服务和分布式的兴起,大部分企业慢慢的把集中式的系统拆分成各个服务,保证各个服务的模块单一,轻量级。微服务和分布式所带来的好处在于各个服务比较轻,每次修改功能只需要发布负责特定的服务即可。分布式所带来的更严重的问题就是数据的一 ...
分类:
编程语言 时间:
2020-07-05 13:41:57
阅读次数:
44
一、Paxos算法产生的背景 Paxos算法是基于消息传递且具有高度容错特性的一致性算法,是目前公认的解决分布式一致性问题最有效的算法之一,其解决的问题就是在分布式系统中如何就某个值(决议)达成一致。 面试的时候:不要把这个Paxos算法达到的目的和分布式事务联系起来,而是针对Zookeeper这样 ...
分类:
编程语言 时间:
2020-07-03 21:25:58
阅读次数:
67
一、概述 1.ZAB(Zookeeper Atomic Broadcast) 是专门为Zookeeper设计的一套广播协议 2.这个协议底层基于2PC算法进行设计,利用PAXOS算法进行改进 3.作用:原子广播和崩溃恢复 二、原子广播 1.原子广播主要保证Zookeeper集群中的所有节点的数据一致 ...
分类:
其他好文 时间:
2020-06-20 14:07:33
阅读次数:
53
CAP定理 在分布式系统中,一致性、可用性、分区容错性最多只能同时实现两点。一致性,分布式系统所有数据备份是否相同。可用性,收到用户的请求,在时限内服务器必须给出明确的回应。分区容错性:大多数分布式系统都分布在多个子网络,每个子网络就叫做一个区。分区容错指分区间通信可能失败,比如,一台服务器放在中国 ...
分类:
其他好文 时间:
2020-06-04 20:07:18
阅读次数:
98
前言 之前的Zookeeper协议篇-Paxos算法与ZAB协议通过了解Paoxs算法开始,到Zab协议的两大特性:崩溃恢复和消息广播,学习了Zookeeper是如何通过Zab协议实现高可用,本篇主要解析Zookeeper的启动流程 单机模式启动流程 我们知道,Zookeeper使用中分为单机和集群 ...
分类:
其他好文 时间:
2020-06-04 10:24:44
阅读次数:
68
前言 可以自行去学习一下Zookeeper中的系统模型,节点特性,权限认证以及事件通知Watcher机制相关知识,本篇主要学习Zookeeper一致性算法和满足分布式协调的Zab协议 Paxos算法 Paxos算法是莱斯利*兰伯特在1990年提出的一种基于消息传递并且具有高度容错特性的一致性算法,是 ...
分类:
编程语言 时间:
2020-06-02 11:14:57
阅读次数:
72
Paxos 存在的问题 Paxos 算法的描述偏学术化,缺失了很多细节,没有办法直接应用于工程领域。实际工程应用中的分布式算法大多是 Paxos 的变种,验证这些算法的正确性也成为了一个难题。 举个例子:上一篇文章的 "最后" 介绍了一个应用 Paxos 算法的工程模型,这个模型存在明显的写性能瓶颈 ...
分类:
其他好文 时间:
2020-05-23 19:57:50
阅读次数:
52
Zab 协议:zookeeper 基于 Paxos 协议的改进协议 zookeeper atomic broadcast 原子广播协议。
zookeeper 基于 Zab 协议实现选主及事务提交。 ...
分类:
其他好文 时间:
2020-05-23 09:23:59
阅读次数:
59
JAVA并发编程实战 Brian Goetz深入理解kafka:核心设计与实践原理Maven实战Grale实战Spring实战(第四版)Spring源码深度解析(第2版)从Paxos到ZooKeeper分布式一致性原理实战MySQL技术内幕 InnoDB存储引擎 第2版MyBatis从入门到精通Mo ...
分类:
其他好文 时间:
2020-05-21 11:59:54
阅读次数:
59