CPA定理-zookeeper和eureka的区别

  • 首先我们先说下:
  1. RDBMS==>(MySql,Oracle,SqlServer等关系型数据库)遵循的原则是:ACID原则(A:原子性。C:一致性。I:独立性。D:持久性。)。
  2. NoSql==> (redis,Mogodb等非关系型数据库)遵循的原则是:CAP原则(C:强一致性。A:可用性。P:分区容错性)。

在分布式领域有一个很著名的CAP定理:C:数据一致性。A:服务可用性。P:分区容错性(服务对网络分区故障的容错性)。

  • C:数据一致性
    即,访问所有节点的得到的数据应该是一样的。
  • A:服务可用性
    即,所有节点必须保持高可用性,注意:如果某个节点等待数据同步而阻塞请求,响应时间出现延迟,就不满足A。
    也就是说没有发生故障的节点必须在有限的时间返回合理的结果。
  • P:分区容错性
    系统中任意信息的丢失或失败不会影响系统的继续运作。
    就是说系统中部分服务挂掉而返回失败,或者因为网络是不可靠的,发生丢包少包,发生数据不一致,不影响系统正常运行。

在这个特性中任何分布式系统只能保证两个。
由于网络是不可靠的,所以分区容错性必须实现,而数据一致性和服务可用性只能实现一个,从而产生CP实现的zookeeper和AP实现的eureka。

zookeeper原理和eureka原理我还写不出来,哈哈哈。

发布了34 篇原创文章 · 获赞 0 · 访问量 1089

猜你喜欢

转载自blog.csdn.net/qq_42634696/article/details/105285082
今日推荐