diff --git a/notes/分布式基础.md b/notes/分布式基础.md index 29846bed..3c4f8a4b 100644 --- a/notes/分布式基础.md +++ b/notes/分布式基础.md @@ -74,7 +74,13 @@ ### 3.3 一致性 -一致性问题是指对于一组服务器,给定一组操作,它们的结果达成一致。也可以理解为,当某个服务器收到客户端的一组操作时,它必须与其它服务器交流以保证所有的服务器都是以同样的顺序收到并执行同样的操作。 +可以从两个角度理解一致性:从客户端的角度,读写操作是否满足某种特性;从服务器的角度,多个数据副本之间是否一致。 + +有以下三种一致性模型: + +1. 强一致性:新数据写入之后,在任何数据副本上都能读取到最新值; +2. 弱一致性:新数据写入之后,不能保证在数据副本上能读取到最新值; +3. 最终一致性:新数据写入之后,只能保证过一了一个时间窗口才能读取到最新值; ### 3.4 可扩展性 @@ -152,7 +158,7 @@ Distributed Hash Table(DHT):对于哈希空间 0\~2n,将该

-需要注意的是,分区容忍性必不可少,因为需要总是假设网络是不可靠的。因此实际上设计分布式系统需要在可用性和一致性之间做权衡。 +需要注意的是,分区容忍性必不可少,因为需要总是假设网络是不可靠的。因此实际上设计分布式系统需要在一致性和可用性之间做权衡。 # 容错