CAP 对应的模型和应用?(约282字)

CAP 对应的模型和应用?

CA without P

理论上放弃 P(分区容错性),则 C(强一致性)和 A(可用性)是可以保证的。实际上分区是不可避免的,严格上 CA 指的是允许分区后各子系统依然保持 CA。

CA 模型的常见应用:

  • 集群数据库
  • xFS 文件系统

CP without A

放弃 A(可用),相当于每个请求都需要在 Server 之间强一致,而 P(分区)会导致同步时间无限延长,如此 CP 也是可以保证的。很多传统的数据库分布式事务都属于这种模式。

CP 模型的常见应用:

  • 分布式数据库
  • 分布式锁

AP wihtout C

要高可用并允许分区,则需放弃一致性。一旦分区发生,节点之间可能会失去联系,为了高可用,每个节点只能用本地数据提供服务,而这样会导致全局数据的不一致性。现在众多的 NoSQL 都属于此类。

AP 模型常见应用:

  • Web 缓存
  • DNS

举个大家更熟悉的例子,像我们熟悉的注册中心ZooKeeperEurekaNacos中:

  • ZooKeeper 保证的是 CP
  • Eureka 保证的则是 AP
  • Nacos 不仅支持 CP 也支持 AP

THE END
喜欢就支持一下吧
点赞0 分享
评论 抢沙发

请登录后发表评论

    暂无评论内容