Nacos 的 CP 和 AP 模式?
发布于
一、AP 模式(临时实例)
- 服务实例注册后,通过心跳维持,心跳超时则剔除。
- 各节点数据可能短暂不一致,但保证可用性。
- 适合服务注册场景,实例变化频繁。
二、CP 模式(持久实例)
- 实例注册需要集群半数以上节点确认,强一致性。
- 节点不可用时不会自动剔除,需手动注销。
- 适合需要强一致性的场景。
三、切换
通过 ephemeral 参数控制:true 为 AP(临时),false 为 CP(持久)。
四、为什么 Nacos 支持切换
服务注册发现更看重可用性(AP),配置管理更看重一致性(CP),Nacos 通过 Raft 协议和 Distro 协议分别保证。