Nacos的简单使用

本文介绍了Nacos的基础知识,包括Nacos的简介、技术版本信息,详细讲述了如何安装和运行Nacos。接着,文章讨论了如何将Feign应用注册到Nacos注册中心,并将其用作配置中心进行管理。最后进行了总结,强调了Nacos在微服务架构中的重要角色。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、Nacos简介

Nacos是阿里系开发的兼容Spring Cloud的服务注册中心组件,是微服务国产化的先驱。Nacos作为与Eureka的对比,不仅具有Eureka固有的集群化、注册中心等功能,还具有配置中心的功能,并且更加简单使用,拆箱即用,也支持二次开发。
并且在集成Spring Cloud大家族生态圈方面,原先经由Eureka开发的Feign、Ribbon、Zuul等程序,业务部分无需经过太多修改,可直接在Nacos环境下使用。
此外,与Spring Cloud Consul相比,Nacos具有简捷、轻量级的特点,本文将重点讲解Nacos作为微服务注册中心和配置中心的功能使用说明。

二、技术版本

本文采用的Spring Boot版本是2.1.0.RELEASE




 

采用的Spring Cloud版本是Greenwich.SR2







 

采用的Spring Alibaba Cloud版本是0.9.0.RELEASE








三、安装并运行Nacos

从官网下载Nacos版本,笔者下载的Nacos版本是nacos-server-1.2.0-SNAPSHOT




 

在Windows环境下直接运行startup.cmd




 

启动成功之后Nacos控制台提示:




 

打开浏览器运行http://localhost:8848/nacos




 

启动成功

四、注册Feign应用到Nacos注册中心

Spring Cloud服务端添加spring-cloud-starter-alibaba-nacos-discovery组件




 

对应的Spring Cloud和Spring Alibaba Cloud配置




 

其配置文件bootstrap.ym;如下:




 

Nacos服务注册地址:




 

服务待调用接口Controller:




 

Spring Cloud服务端主启动类添加@EnableDiscoveryClient注册进Nacos




 

启动项目




 

启动成功后,打开Nacos界面,服务列表




 

表示已经注册到注册中心。
Spring Cloud客户端Maven配置也如下:







 

对应的接口基工程




 

基工程里面的接口




 

Spring Cloud客户端的配置:




 

连接到Nacos注册中心
开启断路器




 

设置断路器相应的超时时间,10秒:




 

Spring Cloud客户端指定Feign调用




 

其中fallback=DemoFeignFallback.class表示断路器处理




 

断路器处理逻辑




 

进行了服务降级
Spring Cloud客户端服务调用的地方:




 

Spring Cloud客户端主启动工程




 

其中@EnableDiscoveryClient表示方便注册中心发现,@EnableFeignClients表示允许Feign客户端调用
启动Spring Cloud客户端




 

在Nacos注册中心里面




 

服务都已注册至注册中心
打开PostMan测试




 

如此,Nacos作为微服务注册中心的例子已演示完毕。

五、Nacos作为配置中心

开启Nacos作为配置中心的Maven组件:spring-cloud-starter-alibaba-nacos-config




 

配置文件bootstrap.yml指定配置中心地址:




 

使用文件类型yaml格式的配置
项目工程名为demo-feign-freeservice




 

其application.yml使用




 

表示要使用Nacos配置中心为demo-feign-freeservice-dev.yaml的文件
在Nacos打开配置中心




 

新增data id为demo-feign-freeservice-dev.yaml的文件




 

指定配置格式为yaml




 

配置内容




 

在Controller层新增接口,指定服务级别@RefreshScope




 

引入以上配置中心指定的${config.info}







 

接口里面引入配置




 

并使用@GetMapping("/configInfo")进行访问
启动项目,在浏览器输入http://localhost:8091/configInfo
如下




 

表示读取到了配置结果
Nacos作为配置中心的讲解说明完毕

六、总结

Nacos作为注册中心是一款很好的服务发现组件,Nacos作为配置中心代替了固有的Spring Cloud Config组件。除此之外,Nacos作为配置中心,还能指定命名空间和分组。
### Nacos使用教程 #### 什么是 NacosNacos 是阿里巴巴开源的一个用于动态服务发现、配置管理和服务管理的平台。它支持多种场景下的微服务治理需求,能够帮助开发者更高效地构建分布式系统[^1]。 --- #### 安装 Nacos ##### Windows 平台安装 1. **下载 Nacos** 下载地址可以从官方 GitHub 页面获取最新版本的压缩包。 2. **解压文件** 将下载好的 `nacos.zip` 文件解压到目标目录。需要注意的是,**解压后的路径不能包含空格**,否则可能导致启动失败[^2]。 3. **启动 Nacos** 打开命令行工具,进入 `nacos/bin` 目录下执行以下命令来启动单机模式的服务: ```bash startup.cmd -m standalone ``` 4. **验证安装成功** 启动完成后,在浏览器输入 `http://localhost:8848/nacos` 访问控制台页面,默认用户名和密码均为 `nacos`。 --- ##### Linux 平台安装 1. **下载并解压** 使用如下命令完成 Nacos 的下载与解压操作: ```bash wget https://github.com/alibaba/nacos/releases/download/{version}/nacos-server-{version}.zip unzip nacos-server-{version}.zip cd nacos/bin/ ``` 2. **启动服务** 对于 Linux 系统,可以运行以下脚本来启动 Nacos 单机版实例: ```bash sh startup.sh -m standalone ``` 3. **访问 Web 控制台** 和 Windows 类似,通过浏览器打开 `http://<服务器IP>:8848/nacos` 进入管理界面。 --- #### 配置管理功能 Nacos 提供了一套完整的动态配置管理系统,允许用户实时更新应用中的配置而无需重启服务。 1. **添加依赖** 如果项目基于 Spring Boot,则需引入 Maven 或 Gradle 中的相关依赖项。以下是 Maven 示例: ```xml <dependency> <groupId>com.alibaba.nacos</groupId> <artifactId>nacos-client</artifactId> <version>{latest-version}</version> </dependency> ``` 2. **编写配置文件** 创建 `application.properties` 或者 YAML 格式的配置文件,并指定连接至 Nacos 的参数: ```properties spring.application.name=example-service spring.cloud.nacos.discovery.server-addr=localhost:8848 ``` 3. **读取远程配置** 在代码中可以通过注入的方式轻松获取来自 Nacos 的配置数据源。 --- #### 服务注册与发现机制 借助 Nacos 实现服务之间的自动注册以及调用方快速定位提供者的逻辑非常简单明了: 1. **服务端注册自己** 当某个微服务部署完毕后,只需按照框架集成文档设置好必要的属性即可实现自动化登记过程。 2. **客户端查询可用节点列表** 基于 SDK 接口发起请求便可拿到当前存活的所有候选对象集合。 --- ```java // Java 示例:向 Nacos 注册服务 Properties properties = new Properties(); properties.put("serverAddr", "127.0.0.1:8848"); NamingService namingService = NamingFactory.createNamingService(properties); namingService.registerInstance("example-service", "192.168.1.1", 8080, null); ``` --- #### 总结 无论是作为配置中心还是服务注册表角色存在,Nacos 都展现了强大的灵活性和技术优势。其易用性和高性能表现使其成为众多企业级项目的首选解决方案之一[^1]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值