阿里为什么使用nacos而不用zookeeper

一.注册中心是cp模式还是cp模式

  1.数据一致性(不是硬性要求可以不一致)

  2.数据可用性是必备条件所以是注册中心是AP模式

二.服务规模,容量和连通性

  1.zookeeper写操作是不可水平扩展的

  2.zookeeper的ZAB协议保证每次请求都会写日志到每个节点

  3.定期将内存数据镜像刷新到磁盘做持久化

  4.宕机重启后自动加载数据并恢复(但是在服务发现的场景,服务列表数据其实没有必要做数据的持久化)

  5.zookeeper的健康检查服务是基于TCP长连接活性探测

  6.nacos是服务提供者主动发起心跳来保活

  7.客户端中应有针对注册中心不可用时的容灾手段,zookeeper的原生客户端不具备这样的能力,nocos的客户端具备本地缓存的机制

三.结论

  1.zookeeper只支持CP模式,nacos支持两种模式(AP可用性,CP一致性)

  2.zookeeper的事务机制和两阶段提交性能远低于nacos

  3.nacos的服务端主动心跳机制优于zookeeper基于TCP的探活(TCP活着不一定服务活着)

  4.nacos客户端会缓存服务列表,当注册中心不可用时起到备灾的作用,而原生的zookeeper并不具备

posted @   笃灬  阅读(1097)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 25岁的心里话
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 零经验选手,Compose 一天开发一款小游戏!
· 因为Apifox不支持离线,我果断选择了Apipost!
· 通过 API 将Deepseek响应流式内容输出到前端
点击右上角即可分享
微信分享提示