公众号merlinsea
微服务存在的问题:
1、微服务项目过多导致配置中心的内容复杂,不方便管理
2、如果后续修改了配置文件,只能重新发布项目
配置中心nacos介绍: 统一管理各个微服务的配置文件。
1、在微服务中配置中心引入依赖
<dependency> <groupId>com.alibaba.cloud</groupId> <artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId> </dependency>
2、将原有的配置文件迁移到配置中心nacos上【注意Data id的格式】
3、编写bootstrap.yml配置文件【告诉项目配置中心在哪,拉取哪个配置文件】【相当于告诉网关配置中心在127.0.0.1:8848,拉取 api-gateway-dev.yaml的配置文件】
spring: application: name: api-gateway cloud: nacos: config: server-addr: 127.0.0.1:8848 #Nacos配置中心地址 file-extension: yaml #文件拓展格式 #配置文件应用于开发环境 profiles: active: dev
4、注释原来的配置文件application.yml【不建议删除,因为方便后续查找】
将项目的配置文件迁移到配置中心以后后续启动项目前必须先启动配置中心
naocs依旧存在问题:如果我们在配置中心修改了配置文件,那么如何让微服务动态感知到呢?
答案:通过添加【@RefreshScope】注解实现,在启动类添加即可。