• 【转】 SpringCloudAlibaba之Nacos Config配置中心实战


    【转】 SpringCloudAlibaba之Nacos Config配置中心实战

    SpringCloudAlibaba微服务实战教程系列

    -------------------------------目录-----------------------------------

    一、无脑应用

      1、添加nacos配置

      2、引入pom文件

      3、配置config服务地址

      4、注解使用

    二、高级应用

      1、nacos数据模型

      2、区分环境应用

      3、应用引入多个配置文件 

    ---------------------------------------------------------------------

    一、无脑应用

    1、在nacos管理台进行添加配置(主要看图和第二个框框)

      需要注意的是DataID属性的值为配置文件名格式为:${prefix}-${spring.profile.active}.${file-extension}

      配置方式说明:

        prefix 默认为 spring.application.name的值,也可以通过配置项spring.cloud.nacos.config.prefix 来配置。
        spring.profile.active 即为当前环境对应的 profifile。 注意:当 spring.profile.active为空时,对应的连接符 - 也将不存在,dataId 的拼接格式变成 ${prefix}.${file-extension} 
        file-extension为配置内容的数据格式,可以通过配置项spring.cloud.nacos.config.file-extension来配置。⽬前只⽀持 properties 和 yaml类型。

      哈哈~~,你如果看不懂我来简单说

    prefix就是配置的服务名称,我这里服务名叫nacos-provider
    spring.profile.active就是启动时候指定的启动配置文件后缀(比如dev、test、prod),我这里启动的时候没有指定
    file-extension就是文件的后缀,比如yml(nacos只能选择yaml)、properties,我这里使用的yaml

    2、引入pom文件

            <dependency>
                <groupId>com.alibaba.cloud</groupId>
                <artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId>
            </dependency>

    3、配置项目文件

      在resources中创建bootstrap.yml文件,配置配置中心信息

    spring:
      cloud:
        nacos:
          config:
            server-addr: 127.0.0.1:8848
            file-extension: yaml
            namespace: public

    4、使用配置变量

      在类上面添加原生刷新注解@RefreshScope,在属性引用上添加@Value注解,这样变量就会实时进行刷新了,方便吧~

     

    二、高级应用

      1、nacos数据模型

       首先Namespace命名空间、Group分组、集群这些概念都是为了进⾏归类管理,把服务和配置⽂件进⾏归类,进而实现一些功能:⽐如数据隔离、服务隔离,对于服务来说,不同命名空间中的服务不能够互相访问调⽤。

      Namespace:命名空间,对不同的环境进⾏隔离,⽐如隔离开发环境、测试环境和⽣产环境
      Group:分组,将若⼲个服务或者若⼲个配置集归为⼀组,通常习惯⼀个系统归为⼀个组
      Service:某⼀个服务,⽐如java某个应用实例
      DataId:配置集或者可以认为是⼀个配置⽂件

      详情请参考官网:Nacos官网

      2、区分环境应用

        在nacos管理台上添加命名空间,并且在配置文件中指定namespace属性,进行配置或者服务的完全隔离

      3、应用引入多个配置文件

      主要是 ext-config 属性:

      a、指定拓展文件data-id,
       b、需要设置刷新,默认不会动态刷新
       c、文件优先级,默认配置高于拓展配置,拓展配置数组下标越大优先级越高
    spring:
      cloud:
        nacos:
          config:
            server-addr: 127.0.0.1:8848
            file-extension: yaml
            namespace: public
            #以下为加载多个文件数组信息 直接指定dataid(对于扩展的dataId,[n] n越⼤优先级越⾼),也可以添加 group属性
            ext-config[0]:
              data-id: xxx.yaml
              #默认数据不会主动刷新,添加改属性会动态刷新
              refresh: true
            ext-config[1]:
              data-id: xxx.yaml
              #默认数据不会主动刷新,添加改属性会动态刷新
              refresh: true

    注意nacos客户端依赖与nacos服务端版本不一致导致的md5数据不一样,不停的刷新日志情况--->>解决方案

    或者 com.alibaba.nacos.client: error 提高日志级别

  • 相关阅读:
    函数指针和回调函数
    MATLAB神经网络(2) BP神经网络的非线性系统建模——非线性函数拟合
    MATLAB神经网络(1)之R练习
    R时间序列分析实例
    自动控制理论的MATLAB仿真实例(二)
    自动控制理论的MATLAB仿真实例(一)
    Mathtype快捷键&小技巧
    Latex数学符号对应表
    MATLAB神经网络(1) BP神经网络的数据分类——语音特征信号分类
    R语言实战(三) 图形初阶
  • 原文地址:https://www.cnblogs.com/Javastudy-note/p/13818383.html
Copyright © 2020-2023  润新知