(2)Nacos-config
(1)理论基础
配置文件的不足
1.配置存在公共的配置,缺少统一的管理
2.环境参数的配置在每个项目中都有,一旦泄露,不知道是谁泄露的
3.配置缺少git版本管理
4.配置文件的配置无法实现动态更新
配置中心的思想
1.首先把项目中各种配置全部放到一个集中的地方进行统一管理,并提供一套标准的接口
2.当各个微服务需要获取配置的时候,就来配置中心的接口拉取自己的配置
3.当配置中心中的各种参数有更新的时候,也能通知到各个服务实时的过来同步最新的消息,使之动态更新
Nacos 提供用于存储配置和其他元数据的 key/value 存储,为分布式系统中的外部化配置提供服务器端和客户端支持。使用 Spring Cloud Alibaba Nacos Config,您可以在 Nacos Server 集中管理你 Spring Cloud 应用的外部属性配置。
注意:不能使用原来的application.yml作为配置文件,而是新建一个bootstrap.yml作为配置文件!
(2)项目应用
? ? ? ? <!-- nacos配置中心 -->
? ? ? ? <dependency>
? ? ? ? ? ? <groupId>com.alibaba.cloud</groupId>
? ? ? ? ? ? <artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId>
? ? ? ? </dependency>
? ? ? ? <!-- 读取bootstrap.yaml文件的依赖 -->
? ? ? ? <dependency>
? ? ? ? ? ? <groupId>org.springframework.cloud</groupId>
? ? ? ? ? ? <artifactId>spring-cloud-starter-bootstrap</artifactId>
? ? ? ? </dependency>
【bootstrap.yaml】
spring:
? application:
? ? name: nacos-feign
? cloud:
? ? nacos:
? ? ? discovery:
? ? ? ? server-addr: 192.168.3.41:8848
? ? ? ? namespace: public
? ? ? ? username: nacos
? ? ? ? password: nacos
? ? ? config:
? ? ? ? server-addr: 192.168.3.41:8848
? ? ? ? file-extension: yaml
? ? ? ? extension-configs:
? ? ? ? ? - dataId: shopfeign.yaml
? ? ? ? ? ? refresh: true
? ? ? ? namespace: public
? mvc:
? ? pathmatch:
? ? ? matching-strategy: ant_path_matcher
【nacos服务器添加配置列表】
配置的【Data Id】必须和配置文件中【dataId】相同。shopfeign.yaml
注意:文件名不用用下划线命名。文件的格式。文件的后缀。