简单了解下base理论
前言
首先Base理论是由于CAP定理中一致性和可用性不可兼得而权衡出来的结果,其来源于对大型互联网分布式实践的总结,是基于CAP定理逐步演化而来的。Base理论的核心思想是牺牲数据的强一致性来换取高可用性,想起强一致性,是不是就会想到传统事务的ACID,有意思的是,这两个模型理论合在一起,就是“酸碱中和”这个词语,如下:
Base理论说的是什么?
Basically Available(基本可用):在分布式系统出现故障时,允许牺牲一部分功能的可用性,来保证核心功能的高可用,这里可以类似熔断降级机制。
Soft state(软状态):如果要求多个节点的数据副本都是一致的,可以称为“硬状态”。相反的,如果允许系统中的数据存在中间状态,同时这个状态也不会影响到系统的可用性,那就等于间接允许了系统中的不同节点副本数据之间可以存在一定的数据同步延时情况。
Eventually consistent(最终一致性):在经过软状态的过渡后,系统中的数据最后一定会达到最终一致。
总结
Base理论的主要思想就是竭尽全力的保证系统可用性,期间允许数据副本之间出现数据不一致的情况,只要最终能达到数据一致性就好。所以很明显,如果产品追求的是可用性,那么base理论就很合适,但是如果是金融项目,涉及到钱这一块,那么强一致性才是重中之重。