当前位置:网站首页>Nacos服务注册中心对比提升
Nacos服务注册中心对比提升
2022-04-22 06:10:00 【Add小兵】
Nacos服务注册中心对比提升
各种服务注册中心对比
| 服务注册与发现框架 | CAP模型 | 控制台管理 | 社区活跃度 |
|---|---|---|---|
| Eureka | AP | 支持 | 低(2.x版本闭源) |
| Zookeeper | CP | 不支持 | 中 |
| Consul | CP | 支持 | 高 |
| Nacos | AP/CP | 支持 | 高 |
CAP模型
计算机专家 埃里克·布鲁尔(Eric Brewer)于 2000 年在 ACM 分布式计算机原理专题讨论会(简称:PODC)中提出的分布式系统设计要考虑的三个核心要素:
一致性(Consistency):同一时刻的同一请求的实例返回的结果相同,所有的数据要求具有强一致性(Strong Consistency)
可用性(Availability):所有实例的读写请求在一定时间内可以得到正确的响应
分区容错性(Partition tolerance):在网络异常(光缆断裂、设备故障、宕机)的情况下,系统仍能提供正常的服务
以上三个特点就是CAP原则(又称CAP定理),但是三个特性不可能同时满足,所以分布式系统设计要考虑的是在满足P(分区容错性)的前提下选择C(一致性)还是A(可用性),即:CP或AP
CP原则:一致性 + 分区容错性原则
CP 原则属于强一致性原则,要求所有节点可以查询的数据随时都要保持一直(同步中的数据不可查询),即:若干个节点形成一个逻辑的共享区域,某一个节点更新的数据都会立即同步到其他数据节点之中,当数据同步完成后才能返回成功的结果,但是在实际的运行过程中网络故障在所难免,如果此时若干个服务节点之间无法通讯时就会出现错误,从而牺牲了以可用性原则(A),例如关系型数据库中的事务。
AP原则:可用性原则 + 分区容错性原则
AP原则属于弱一致性原则,在集群中只要有存活的节点那么所发送来的所有请求都可以得到正确的响应,在进行数据同步处理操作中即便某些节点没有成功的实现数据同步也返回成功,这样就牺牲一致性原则(C 原则)。
使用场景:对于数据的同步一定会发出指令,但是最终的节点是否真的实现了同步,并不保证,可是却可以及时的得到数据更新成功的响应,可以应用在网络环境不是很好的场景中。
Nacos支持CP和AP
Nacos无缝支持一些主流的开源生态,同时再阿里进行Nacos设计的时候重复的考虑到了市场化的运作(市面上大多都是以单一的实现形式为主,例如:Zookeeper使用的是 CP、而 Eureka采用的是AP),在Nacos中提供了两种模式的动态切换。

Nacos 何时选择切换模式
1. 一般来说,如果不需要储存服务界别的信息且服务实例通过nacos-client注册,并能够保持心跳上报,那么就可以选择AP模式。如Spring Cloud 和 Dubbo,都适用于AP模式,AP模式为了服务的可用性减弱了一致性,因此AP模式下只支持注册临时实例。
2. 如果需要在服务级别编辑或者储存配置信息,那么CP是必须的,K8S服务和DNS服务则是用于CP模式。CP模式下则支持注册持久化实例,此时则是以Raft协议为集群运行模式,该模式下注册实例之前必须先注册服务,如果服务不存在,则会返回错误。
- 切换命令(默认是AP):
curl -X PUT '$NACOS_SERVER:8848/nacos/v1/ns/operator/switches?entry=serverMode&value=CP'
v1/ns/operator/switches?entry=serverMode&value=CP’
注意:临时和持久化的区别主要在健康检查失败后的表现,持久化实例健康检查失败后会被标记成不健康,而临时实例会直接从列表中被删除。
版权声明
本文为[Add小兵]所创,转载请带上原文链接,感谢
https://blog.csdn.net/weixin_51250404/article/details/122650489
边栏推荐
- 阿里云部署RSSHub踩坑笔记
- Alternative ps8625 | alternative ps8622 | design and development of cost-effective EDP to LVDS adapter board cs5211
- USBCAN卡在动力电池组EOL测试系统中CAN总线的应用
- Mcs-5 interrupt technology (practice)
- 微电子专业是做芯片的吗?芯片和什么专业有关?
- 数字IC设计和CS选那个?
- Latex符号与公式集合
- HDMI2.0二进一出切换器方案ASW3642和TS3DV642设计电路对比
- 集成电路模拟版图入门-版图基础学习笔记(二)
- Rtd2171u scheme 𞓜 ag9310mfq replaces rtd2171u design circuit | typec to HDMI 4k30hz HD projection scheme design
猜你喜欢

集成电路模拟版图入门-版图基础学习笔记(四)

CAN总线记录诊断助手

芯片设计怎样准备即将面临的秋季补招和来年的春招?

Sss1700 qfn36 single chip designs a USB typec headset | supports the automatic switching of USB headset scheme between wire control and European and American regulations

什么是socket编程?

Mcs-5 interrupt technology (practice)

在消防联网(楼宇、工厂、海上风电、管廊等)中CAN光纤转换器、CAN总线光端机典型应用案例

集成电路模拟版图入门-版图基础学习笔记(五)

CS5213新版规格书|CS5213新版说明书|HDMI转VGA带音频信号输出方案设计

IDEA debug调试教程
随机推荐
C skill tree evaluation - 0415 experience diary
转行数字IC验证的学习路线是什么样的?现在开始转是否来得及?985本硕,电子学院研二
Can transparent recording cloud gateway enables construction machinery
老程序员常逛的网站(持续更新)
CAN光端机在消防联网中的应用
微信小程序 canvas 画简单的仪表盘 渐近色
MCIeCAN在工控机中的应用
leetcode268:丢失的数字
RSS入坑指南
Pl2586 design circuit | pl2586 replaces Fe1 1s circuit diagram | USB2 Scheme design of 0hub industrial hub
Matlab GUI zoom - some controls zoom, some controls do not zoom - Design Tutorial
消防设备光纤联网CAN转光纤转换器
Fire fighting equipment optical fiber networking can to optical fiber converter
Covariance and covariance matrix
Bsgs learning notes
MySQL完全卸载,mysql服务清理
Replace rtd2171u | cs5266 design circuit | type C to HDMI scheme | cs5266an
CS5213新版规格书|CS5213新版说明书|HDMI转VGA带音频信号输出方案设计
Experiment 4 cycle program design
Typec转HDMI 4K30HZ扩展芯片方案CS5261和CS5266设计参数及电路对比