声明:本文是结合自己对技术的理解,以通俗易懂的方式分享自己的学习成果,所以内容不一定正确完善,也希望大家批评指教!
一、概念的引入
就我个人所能了解的范畴,当今分布式系统有两大经典理论,分别是CAP理论和BASE理论,其中CAP理论是在强调说明任何一个分布式系统在一致性、可用性以及分区容忍性这三个特征只中能满足两个,不可能全部满足,CAP理论这里就不多阐述了,感兴趣的可参考我即将写的《分布式CAP理论的学习分享》一文。BASE理论是另一套分布式系统理论,它对CAP一致性和可用性做了一个更细化的诠释,简单上理解BASE是CAP的补充和延申,以下我就和大家分享一下BASE理论:
二、BASE理论
BASE理论总共包括三项,分别是“Basically Available(基本可用)、Soft state(软状态)和Eventually consistent(最终一致性)”。
1、Basically Available(基本可用)
本人理解,基本可用就是满足强一致性,也就是CAP中的C(Consistent),同时依然要保持着P(Partition Torlerance),那么就需要牺牲A(Available)。
这里说的基本可用不是完全不可用,只是在分布式系统出现了故障的时候,暂时部分访问请求不能响应,比如,分布式系统的节点之间的网络发生中断或延时,此时系统正插入一条数据,虽然主本已经完成写入&