注册中心
发布时间 2023-12-21 08:54:44作者: 梅丹隆
Nacos 和 Zookeeper
一.注册中心是ap模式还是cp模式
- 数据一致性(不是硬性要求可以不一致)
- 数据可用性是必备条件所以是注册中心是AP模式
二.服务规模,容量和连通性
- zookeeper写操作是不可水平扩展的
- zookeeper的ZAB协议保证每次请求都会写日志到每个节点
- 定期将内存数据镜像刷新到磁盘做持久化
- 宕机重启后自动加载数据并恢复(但是在服务发现的场景,服务列表数据其实没有必要做数据的持久化)
- zookeeper的健康检查服务是基于TCP长连接活性探测
- nacos是服务提供者主动发起心跳来保活
- 客户端中应有针对注册中心不可用时的容灾手段,zookeeper的原生客户端不具备这样的能力,nocos的客户端具备本地缓存的机制
三.结论
- zookeeper只支持CP模式,nacos支持两种模式(AP可用性,CP一致性)
- zookeeper的事务机制和两阶段提交性能远低于nacos
- nacos的服务端主动心跳机制优于zookeeper基于TCP的探活(TCP活着不一定服务活着)
- nacos客户端会缓存服务列表,当注册中心不可用时起到备灾的作用,而原生的zookeeper并不具备