springcloud集成nacos(详细)
一、什么是nacos
官方:一个更易于构建云原生应用的动态服务发现
、服务配置
、和服务管理
平台
理解:注册中心(如:服务地址注册进去根据名称调用)、配置中心(如:每个服务yaml中的配置)、服务管理(可视化管理平台)
二、nacos的下载与启动
1.下载地址
https://github.com/alibaba/nacos/releases
2.修改默认的集群方式
本地启动单机模式需要修改nacos/bin/startup.cmd
中set MODE="cluster"改
为set MODE="standalone",将
集群修改为单机(不然启动会报错)
3.若端口被占用,可以修改
Nacos的默认端口是8848,如果你电脑上的其它进程占用了8848端口,请先尝试关闭该进程。如果无法关闭占用8848端口的进程,也可以进入nacos的conf目录,修改配置文件中的端口
4.启动nacos
下载后解压,进入bin目录双击启动startup.cmd
框中的就是默认的nacos配置中心的地址
复制网址进入,默认的账号密码都是nacos
进入到页面
三、SpringCloud集成nacos步骤
1、在pom文件中引入依赖
<!-- nacos客户端依赖包 --> <dependency> <groupId>com.alibaba.cloud</groupId> <artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId> </dependency> <!--nacos的配置管理依赖--> <dependency> <groupId>com.alibaba.cloud</groupId> <artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId> </dependency>
2.添加bootstrap.yml文件
主要是对Nacos的作为配置中心的功能进行配置
spring:
application:
name: access
profiles:
active: dev
cloud:
nacos:
discovery:
server-addr: 127.0.0.1:8848 #Nacos服务注册中心地址
#namespace: dab22371-b924-4d2c-969f-f28e39e484b6
config:
server-addr: 127.0.0.1:8848 #Nacos作为配置中心地址
file-extension: yml #指定yaml格式的配置
refresh-enabled: true #动态刷新配置
#namespace: dev
#group: ACCESS_GROUP
namespace: dev
group: ACCESS_GROUP
username: nacos
password: nacos
3.在nacos界面添加配置信息
添加完成之后发布配置
4.创建controller来测试
测试代码
@RefreshScope
可以使Nacos
客户端运行过程中可以获取到配置中心配置的变化然后更新
import org.springframework.beans.factory.annotation.Value; import org.springframework.cloud.context.config.annotation.RefreshScope; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; @RefreshScope @RestController @RequestMapping(value = "/config") public class ConfigController { /** * 读取 nacos 配置信息 */ @Value(value = "${conf.name}") private String name; /** * 获取配置内容 * * @return */ @RequestMapping(value = "/get") public String getConfig() { return name; } }
测试成功
5.更改nacos配置信息重新发布测试
在nacos界面编辑配置修改文字信息,并发布
再次测试
到这里,nacos已经实现了实时的配置动态更新
其他配置可以参考官方文档
https://github.com/alibaba/spring-cloud-alibaba/wiki/Nacos-config
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· 【自荐】一款简洁、开源的在线白板工具 Drawnix