分布式系统中的cap原则


cap原则:

CAP原则又称CAP定理,指的是在一个分布式系统中,Consistency(一致性)、 Availability(可用性)、Partition tolerance(分区容错性)可靠性?,三者不可得兼 [1]  。

实际体现:

我们的eureka和zookeeper的服务治理使用了cap原则

eureka宁可接受故障实例,也不愿意丢掉健康的实例,zookeeper则比较严格,对于故障实例会直接剔除。

对于eureka来说,她还有一个自我保护机制,在网络不好的时候,我们的服务可能不能及时去和eureka续约。我们的eureka会判断最近15分钟心跳失败的 比例是不是超过85%,如果超过,eureka会认为可能出现了特殊情况(例如网络波动),那么他会把这些失效的实例保护起来,而不会去剔除。


Eureka的服务治理强调了CAP原则中的AP,即可用性和可靠性。它与Zookeeper这一类强调CP(一致性,可靠性)的服务治理框架最大的区别在于:Eureka为了实现更高的服务可用性,牺牲了一定的一致性,极端情况下它宁愿接收故障实例也不愿丢掉健康实例,正如我们上面所说的自我保护机制。

猜你喜欢

转载自blog.csdn.net/qpc672456416/article/details/80786214