Nacos学习一(什么是nacos)
什么是nacos
Nacos 致力于帮助您发现、配置和管理微服务。Nacos 提供了一组简单易用的特性集,帮助您快速实现动态服务发现、服务配置、服务元数据及流量管理。
Nacos 帮助您更敏捷和容易地构建、交付和管理微服务平台。 Nacos 是构建以“服务”为中心的现代应用架构 (例如微服务范式、云原生范式) 的服务基础设施。
Nacos 的关键特性包括:
-
服务发现和服务健康监测 动态配置服务 动态 DNS 服务 服务及其元数据管理
为什么要用nacos
功能优势
Nacos = 注册中心 + 配置中心。 nacos社区非常活跃,最近也比较高产,可以看到目前nacos的功能以及规划排期的功能
历史原因
市场上的注册中心(eureka、zookeeper、consul等)出现比较早,nacos都是从前者参考后做出来,比前者更加丰富。
主流产品对比
在nacos之前,我们一般会选择zookeeper、eureka、consul等,nacos出来之后,会逐渐迁移到nacos(身边的小伙伴已经陆陆续续地切换到nacos去了),这也会是一个大的趋势。
-
zookeeper是基于CP模型,leader+follower,leader写,同步到follower,follower可以读,保证顺序一致性,就是基本尽量保证到数据一致(弱一致),主动进行数据同步。当leader崩溃的时候,为了保证数据一致性,尽量减少读到不一致的数据的情况,这时候会进行选举,以及做数据同步,但是集群会短暂的不可用。 eureka是基于AP模型,peer-to-peer,每个节点能写也能读,每个节点都要同步给其他节点,不过是异步同步,所以随时读任意一个节点时都有可能读到不一样的数据,任何一个节点宕机,其他节点不会受到影响,都能正常工作,极高可用性,但是数据一致性太弱。 Consul基于raft算法的CP模型 Nacos基于raft算法的CP模型,同时也支持配置成类似eureka的AP模型
界面美观
不得不说,阿里出品都挺好看的,挺符合开发者审美~~~
总结
建议大家未来还是使用nacos(不正式使用的话私下玩玩也挺不错的),因为nacos功能更加丰富,社区更加活跃,背靠国内大厂(经受双十一的考验),中英文文档,界面美观。
参考与感谢
上一篇:
IDEA上Java项目控制台中文乱码