zoukankan      html  css  js  c++  java
  • 配置中心(nacos)-控制台使用

    配置中心(nacos)-控制台使用

    一、命名空间

    作用:配置隔离

    • 默认空间
      • public(保留空间):默认新增的所有配置都在public空间。
    • 新建默认空间:
      • 创建流程
        • 命名空间 - 新建命名空间
        • 填写 “命名空间名” 与 “描述”, 点击 “确定”
        • 生成一条信息,包含命名空间的唯一ID

    1、基于环境隔离

    因项目需要可能分不同的部署环境。例如开发,测试,生产。

    • 修改bootstrap.properties文件

      spring.cloud.nacos.config.namespace=<命名空间的ID>
      

    2、基于微服务相互隔离

    每一个微服务都创建自己的命名空间,只加载自己命名空间下的所有配置。

    二、配置集

    所有的配置的集合。

    三、配置集ID

    类似文件名。在控制台中,新建配置时的Data ID就是配置集ID。

    四、配置分组

    默认所有的配置集都属于 DEFAULT_GROUP。组名可随意创建。

    • 修改bootstrap.properties文件

      spring.cloud.nacos.config.group=<组名>
      

    五、举例

    • 每个微服务创建自己的命名空间
    • 使用配置分组区分环境。例如dev,test,prod

    六、同时加载多个配置集

    随着业务不断壮大,微服务可能有非常多的配置,如果我们将所有的配置都放在一个配置文件中,不易维护。

    所以我们需要拆分出不同的配置文件。例如可根据数据源、框架、微服务等进行拆分。

    • 修改bootstrap.properties文件

      spring.cloud.nacos.server-addr=127.0.0.1:8848
      spring.application.name=test-demo
      
      spring.cloud.nacos.config.namespace=<命名空间的ID>
      
      # 如果此处不配置 spring.cloud.nacos.config.group
      # 则命名空间下 DEFAULT_GROUP(默认分组) 加载默认分组的
      # 命名空间下没有默认分组,则加载项目中的
      spring.cloud.nacos.config.group=<组名>
      
      # 拓展配置 - 数据源
      spring.cloud.nacos.config.ext-config[0].data-id=datasource.yml # 配置集ID
      spring.cloud.nacos.config.ext-config[0].group=dev	# 配置分组
      spring.cloud.nacos.config.ext-config[0].refresh=true # 动态刷新
      
      # 拓展配置 - mybatis
      spring.cloud.nacos.config.ext-config[1].data-id=mybatis.yml # 配置集ID
      spring.cloud.nacos.config.ext-config[1].group=dev	# 配置分组
      spring.cloud.nacos.config.ext-config[1].refresh=true # 动态刷新
      
      # 拓展配置 - 其他
      spring.cloud.nacos.config.ext-config[2].data-id=other.yml # 配置集ID
      spring.cloud.nacos.config.ext-config[2].group=dev	# 配置分组
      spring.cloud.nacos.config.ext-config[2].refresh=true # 动态刷新
      

    七、总结

    • 微服务任何配置信息,任何配置文件都可以放在配置中心中
    • 只需要在bootstrap.properties文件中说明加载配置中心中哪些配置文件即可。
    • 以前Spring Boot 中任何方法从配置中获取值的,例如:@Value,@ConfigurationProperties都能使用。
    • 配置中心有的优先使用配置中心的值。

    本文内容学习自谷粒商城--微服务分布式电商项目-分布式基础。

    课程地址

  • 相关阅读:
    Spring boot 基于注解方式配置datasource
    Java任务调度框架之分布式调度框架XXL-Job介绍
    mysql使用联合索引提示字符长度超限制解决办法
    程序访问一个地址时候报400错误,浏览器访问正常怎么解决
    JDK8stream将list转Map对象报错java.lang.IllegalStateException
    如何应对互联网行业的「中年危机」?
    SpringMVC访问出错No converter found for return value of type
    怎么设置tomcat在get请求的中文也不乱码?两种情况下配置
    使用tomcat方式实现websocket即时通讯服务端讲解
    服务端向客户端推送消息技术之websocket的介绍
  • 原文地址:https://www.cnblogs.com/luckyzs/p/13168162.html
Copyright © 2011-2022 走看看