分布式系统 小合集

2020-10-19  本文已影响0人  LinkinStar

分布式系统常见定义

CAP

定义

一致性

任意时刻,访问任意节点,读取数据一致,否则读取失败。

一致性要求的就是一致,要么读取失败,只要读取成功那么数据就一定是一致的。

可用性

任意时刻,访问任意节点,都能正常返回数据,但数据不保证一致。

可用性要求就是可用,无论你怎么请求,我都能给你返回数据,但是不保证返回的数据是一致的。

分区容错性

当节点间出现任意数量的消息丢失,系统任然可以继续提供服务。

分区容错要求整个集群对内部的节点故障的容错能力。

分区容错性必须保证,对于分布式系统来说这是基础,如果出现节点间的异常而导致整个集群都无法正常工作,这样的分布式系统就如同单点没有区别了。一挂全挂。

Base

定义

基本可用

假设系统出现了不可预知的故障,但是只是原先的体验或者性能受到影响,但是主功能可用

软状态

允许系统中的数据存在中间状态,这个状态不影响系统的整体可用;允许系统不同节点间,数据副本存在短暂的不一 致。

最终一致性

在没有其他更新操作的情况下,数据最终能够达到一致的状态,所有节点最终都能拿到最新的值。

TCC

定义

Try

向每个执行节点发送 需要执行的命令

如果所有节点均同意 -> 则进入 Confirm 阶段

如果存在节点不同意 -> 则进入 Cancel 阶段

Confirm

每个节点执行 命令 并提交

Concel

每个节执行 取消 操作

小合集

难过又厉害的 Paxos
能忍的 PBFT
有责任感的 zab
优秀而惊艳的 raft
巧妙的 一致性 hash
流言蜚语 Gossip

上一篇下一篇

猜你喜欢

热点阅读