Nacos 配置中心

上篇:Nacos Server 集群搭建

添加配置集

  • 在nacos 配置中心新建即可
    在这里插入图片描述
    在这里插入图片描述

实时刷新配置项

在这里插入图片描述

  • 依赖
        <dependency>
            <groupId>com.alibaba.cloud</groupId>
            <artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId>
        </dependency>
  • 修改配置文件application.ymlbootstrap.yaml
  • 添加config配置
    在这里插入图片描述
server:
  port: 8083

spring:
  application:
    name: m-service-resume

  datasource:
    driver-class-name: com.mysql.jdbc.Driver
    url: jdbc:mysql://localhost:3306/test?useUnicode=true&characterEncoding=utf8 &serverTimezone=UTC
    username: root
    password: root
  jpa:
    database: MySQL
    show-sql: true
    hibernate:
      naming:
        physical-strategy: org.hibernate.boot.model.naming.PhysicalNamingStrategyStandardImpl  #避免将驼峰命名转换为下划线命名
  cloud:
    nacos:
      discovery:
        server-addr: 127.0.0.1:8848,127.0.0.1:8849,127.0.0.1:8850
        #集群名称
        cluster-name: BJ
        #所属命名空间
        namespace: 59486577-18d5-459c-94ad-cbdf6f3d9d5a
       #nacos config 配置
      config:
        server-addr: 127.0.0.1:8848,127.0.0.1:8849,127.0.0.1:8850
        namespace: 59486577-18d5-459c-94ad-cbdf6f3d9d5a
        group: DEFAULT_GROUP
        file-extension: yaml



  • 获取配置config类,添加@RefreshScope 注解
@RestController
@RequestMapping("/config")
//实时刷新注解
@RefreshScope 
public class ConfigController {
    
    
    @Value("${my.message}")
    private String myMessage;

    @Value("${mysql.url}")
    private String mysqlUrl;


    @GetMapping("/viewconfig")
    public String viewconfig() {
    
    
        return "msg==>" + myMessage  + " mySqlUrl=>" + mysqlUrl;
    }
}
  • 访问
    在这里插入图片描述
    • 修改配置中的内容,100为200
      在这里插入图片描述
    • 实时刷新完成

监听查询

  • nacos配置中心
    在这里插入图片描述
    在这里插入图片描述

dataId扩展

从nacos中 获取多个配置文件

  • 在nacos 创建多个配置文件abc.yamldef.yaml

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

  • 获取多个配置文件
    在这里插入图片描述
  cloud:
    nacos:
      discovery:
      config:
        server-addr: 127.0.0.1:8848,127.0.0.1:8849,127.0.0.1:8850
        namespace: 59486577-18d5-459c-94ad-cbdf6f3d9d5a
        group: DEFAULT_GROUP
        file-extension: yaml
        #获取多个配置文件
        ext-config[0]:
         data-id: abc.yaml
         group: DEFAULT_GROUP
         refresh: true #扩展dataId 的动态刷新
        ext-config[1]:
         data-id: def.yaml
         group: DEFAULT_GROUP
         refresh: true
  • 重启服务
    在这里插入图片描述
    在这里插入图片描述
  • 修改nacos中的配置重新访问接口(扩展配置文件动态刷新)
    在这里插入图片描述
    在这里插入图片描述

dataId优先级问题

优先级:根据规则⽣成的dataId > 扩展的dataId(对于扩展的dataId,[n] n越⼤优先级越⾼)

  • m-service-resume.yaml 中的my.message配置copy 到abc.yamldef.yaml 数字修改为300 ,400
    在这里插入图片描述
    在这里插入图片描述

  • 重启项目,结果
    在这里插入图片描述

  • 扩展的配置文件之间的优先级,新建配置项
    在这里插入图片描述
    在这里插入图片描述

  • 结果
    在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/u014535922/article/details/130644688