分布式系统架构系列讲解七(分布式一致性 7):Quorum NWR算法
Posted 吃透Java
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了分布式系统架构系列讲解七(分布式一致性 7):Quorum NWR算法相关的知识,希望对你有一定的参考价值。
分布式系统架构系列讲解 - 总目录
CAP理论中的一致性一般指的是强一致性,也就是说写操作完成后,任何后续访问都能读到更新后的值。而BASE理论中的一致性指的是最终一致性,也就是说写操作完成后, 任何后续访问可能会读到旧数据,但是整个分布式系统的数据最终会达到一致。
那么,如果我们的系统现在是最终一致性模型,也就是AP模型,突然有一天因为业务需要,要临时保证节点间的数据强一致性,有没有办法临时做这样的改造呢?
一种办法是重新开发一套系统,但显然成本太高了。另一种办法就是本章要介绍的Quorum NWR算法。通过 Quorum NWR,我们可以自定义一致性级别。
一、Quorum NWR三要素
Quorum NWR 中有三个要素:N、W、R,它们是 Quorum NWR 的核心内容,我们就是通过组合这三个要素,实现自定义一致性级别的。
1.1 N(副本数)
N 表示副本数,又叫做复制因子(Replication Factor)。也就是说,N 表示集群中同一份数据有多少个副本。注意,副本数不等同于节点数。(如果读者对Elasticsearch或Kafka有了解,可以把副本理解成Replica Shard)
比如下图中
以上是关于分布式系统架构系列讲解七(分布式一致性 7):Quorum NWR算法的主要内容,如果未能解决你的问题,请参考以下文章