您当前位置:资讯中心 >服务器 >浏览文章

Nacos神秘面纱揭晓:微服务时代的配置之王

来源:互联网 日期:2023/12/7 8:07:10 阅读量:(0)

一、前言

随着微服务架构的兴起,服务的规模不断增长,对于服务的发现、配置和管理变得越来越复杂。

在这个背景下,Nacos应运而生,以其强大的功能和灵活性成为云原生领域的瑞士军刀之一。

「Nacos是一个由阿里巴巴开源的项目,它提供了服务注册与发现、动态配置管理、服务和配置的实时监听等功能,使得开发者可以更加轻松地构建和管理微服务架构。」

在Euerka不维护的时候,Nacos站出来挑扛起了大旗。不得不说是真的好用,完美适配SpringCloud,使得微服务更加完善!

当然免费版可能会有些问题,听说企业收费的是难以想象的好用!有得赚就不会停止维护,就会越来越好,我们一起期待,它给我们带来更好的功能!

「文章比较长,还请耐心看完,先收藏慢慢看,后面有源码部门!」

话不多说,我们一起来深入了解一下吧!

二、Nacos发展史

「2018年3月:首次开源」

在2018年3月,Nacos首次以开源的形式亮相。作为一个全功能的服务发现和配置管理平台,Nacos的目标是帮助开发者构建和管理微服务架构。

「2018年8月:成为Apache孵化项目」

由于其强大的功能和快速的社区发展,Nacos于2018年8月进入了Apache软件基金会的孵化阶段,成为Apache的孵化项目。

「2019年3月:成为Apache顶级项目」

在经过孵化期的发展和审查后,Nacos于2019年3月正式成为Apache顶级项目。这意味着 Nacos 的社区达到了一定的规模和贡献度,得到了广泛认可。

「2019年4月:发布Nacos 1.0.0 GA」

同时支持 AP 和 CP 一致性,可以大规模地生产环境中使用,新版本不仅针对社区的需求和集群的稳定性相应地增加了一些新特性,而且还发布了服务发现模块的性能测试报告,以及完整的 API 列表和架构设计文档。「快速增长期!」

「2021年03月:发布Nacos 2.0」

对于服务注册和发现使用 gRPC 框架,Nacos 2.0 注册性能相、注销实例性能比较 Nacos 1.x 总体提升至少 2 倍;Nacos 2.0 查询性能相比较 Nacos 1.x 总体提升至少 3 倍,单机多线程甚至提升了 10 倍;「这一时期基本没有对手!」

三、Nacos介绍和特性

1、介绍

Nacos 是 Dynamic Naming and Configuration Service的首字母简称,「一个更易于构建云原生应用的动态服务发现、配置管理和服务管理平台。」

Nacos 致力于帮助您发现、配置和管理微服务。Nacos 提供了一组简单易用的特性集,帮助您快速实现动态服务发现、服务配置、服务元数据及流量管理。

Nacos 帮助您更敏捷和容易地构建、交付和管理微服务平台。Nacos 是构建以“服务”为中心的现代应用架构 (例如微服务范式、云原生范式) 的服务基础设施。

我们看一下Nacos 生态图:

2、核心特性

「动态配置服务」

动态配置服务让您能够以中心化、外部化和动态化的方式管理所有环境的配置。动态配置消除了配置变更时重新部署应用和服务的需要。配置中心化管理让实现无状态服务更简单,也让按需弹性扩展服务更容易。

把Yaml文件放到Nacos上统一管理和切换。

「服务发现及管理」

动态服务发现对以服务为中心的(例如微服务和云原生)应用架构方式非常关键。Nacos支持DNS-Based和RPC-Based(Dubbo、gRPC)模式的服务发现。Nacos也提供实时健康检查,以防止将请求发往不健康的主机或服务实例。借助Nacos,您可以更容易地为您的服务实现断路器。

2.0以后采用gRPC进行服务的注册!

「动态DNS服务」

通过支持权重路由,动态DNS服务能让您轻松实现中间层负载均衡、更灵活的路由策略、流量控制以及简单数据中心内网的简单DNS解析服务。动态DNS服务还能让您更容易地实现以DNS协议为基础的服务发现,以消除耦合到厂商私有服务发现API上的风险。

「服务及其元数据管理」

Nacos 能让您从微服务平台建设的视角管理数据中心的所有服务及元数据,包括管理服务的描述、生命周期、服务的静态依赖分析、服务的健康状态、服务的流量管理、路由及安全策略、服务的 SLA 以及最首要的 metrics 统计数据。

灰度发布的配置就是元数据的一些参数!

四、Nacos安装与配置

1、下载

我们根据对照表来下载哈!由于我们使用的Springboot版本是3.0之前的,所以要引入SpringCloudAlibaba 2021.0.5版本的,这个版本的Nacos只能安装2.2.0的。所以我们不能安装最新版的Nacos2.2.3,当然你也可以试一下,看看是不是向下兼容。

对照表地址:https://github.com/alibaba/spring-cloud-alibaba/wiki/%E7%89%88%E6%9C%AC%E8%AF%B4%E6%98%8E#%E6%AF%95%E4%B8%9A%E7%89%88%E6%9C%AC%E4%BE%9D%E8%B5%96%E5%85%B3%E7%B3%BB%E6%8E%A8%E8%8D%90%E4%BD%BF%E7%94%A8。

经过对照表我们本次使用的就是:

  • SpringCloud 2021.0.5
  • SpringCloud Alibaba 2021.0.5.0
  • SpringBoot 2.6.13

经过对照表我们本次下载客户端版本为2.2.0。

下载慢的可以使用迅雷!本次以Windows为例,Linux可以下载上面的,想看源码的也可以下载下面的源码!

Nacos2.2.0下载:https://github.com/alibaba/nacos/releases/tag/2.2.0。

这是绿色软件,不需要安装,尽量放到没有中文目录下,防止不必要的麻烦!

2、启动访问

「启动这里有个坑:」

对于Nacos2.0以上版本默认启动是以集群的方式启动,需要你指定成单机启动,当然你可以使用集群哈,这里就不带大家搭集群了!

对于1.X直接双击启动即可!

找到bin目录,我们在上方输入cmd回车。

由于公司项目启动着nacos,咱的nacos改了端口为:18848。

输入启动命令:

startup.cmd -m standalone
关键字:
声明:我公司网站部分信息和资讯来自于网络,若涉及版权相关问题请致电(63937922)或在线提交留言告知,我们会第一时间屏蔽删除。
有价值
0% (0)
无价值
0% (10)

分享转发:

发表评论请先登录后发表评论。愿您的每句评论,都能给大家的生活添色彩,带来共鸣,带来思索,带来快乐。