Skip to content
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
14 changes: 7 additions & 7 deletions readers/ZooKeeper/01-介绍.md
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
####目的
#### 目的
ZooKeeper的主要目的是为了减轻构建健壮的分布式系统的负担。

使应用的设计者不需要把时间花费在构建分布式系统上,而更加着力于本身的业务逻辑。

####ZooKeepr的特性
#### ZooKeeper的特性

ZooKeeper使在分布式系统上运行可协调任务成为可能。

Expand All @@ -18,7 +18,7 @@ ZooKeeper提供:
3. 通过简单的方式处理并发方面的问题,而这些问题经常导致分布式系统中的不一致行为。


####分布式进程的沟通方式
#### 分布式进程的沟通方式
在分布式系统中的通常有两种通信方式:

1. 通过网络直接交换消息
Expand All @@ -33,14 +33,14 @@ ZooKeeper用的是共享存储的方式。
3. 时钟偏差


####Master-Worker架构
#### Master-Worker架构
Master-Worker是典型的一种分布式系统的架构,它需要解决三个关键问题:

1. Master Crash
2. Worker Crash
3. Master-Worker通信失败

#####Master Crash
##### Master Crash
关键一:需要关注主Master crash后,备用master启动后。

如何恢复到主Master crash时候的状态,由于主已经挂了,因此备用master不可能从主中恢复状态,而需要借助其它方式。
Expand All @@ -50,12 +50,12 @@ Master-Worker是典型的一种分布式系统的架构,它需要解决三个
比如某些情况下,由于主load很高,导致通信延迟严重,可能勿认为主挂了,从而启动另个主,这样会产生脑裂的情况,从而导致不一致。


#####Worker Crash
##### Worker Crash
Master需要能检测出worker挂了,将任务重新分配。

有时候还需要清理worker挂后产生的一些副作用,比如数据清理等。

####拜占庭问题
#### 拜占庭问题
[Wiki中的介绍](http://zh.wikipedia.org/wiki/%E6%8B%9C%E5%8D%A0%E5%BA%AD%E5%B0%86%E5%86%9B%E9%97%AE%E9%A2%98)

假设计算机总数为N,有问题的计算机数为F
Expand Down