Spring Cloud Alibaba - 18 Nacos Config配置中心加载相同微服务的不同环境下的通用配置

2022-02-05 15:59:02 浏览数 (1)

文章目录

  • 需求
  • 实现
    • Step 1 Nacos Config 新增公共配置
    • Step 2 验证
  • 配置文件优先级
  • 源码

需求

举个例子,同一个微服务,通常我们的servlet-context 都是相同的,不区分生产环境、测试环境, 那类似这样公共的配置,我们可以每个自己单独配置一份,有没有更好的方式呢?

实现

我们继续使用 Spring Cloud Alibaba - 17 Nacos Config 配置中心 应用篇的工程为例子 ,实现上面的需求,我们需要创建一个通用配置文件:order-center.yml配置那么artisan-config-center.yml就是一个通用配置了,不管是启动prod,还是dev都会有该段配置artisan-config-center.yml的 context-path 配置 。

Step 1 Nacos Config 新增公共配置

Step 2 验证

启动服务,观察日志,验证

代码语言:javascript复制
2022-02-04 13:53:13.926  INFO 3728 --- [           main] c.a.c.n.c.NacosPropertySourceBuilder     : Loading nacos data, dataId: 'artisan-config-center.yml', group: 'DEFAULT_GROUP', data: server: 
  servlet:
    context-path: /configApp
2022-02-04 13:53:14.028  INFO 3728 --- [           main] c.a.c.n.c.NacosPropertySourceBuilder     : Loading nacos data, dataId: 'artisan-config-center-dev.yml', group: 'DEFAULT_GROUP', data: server:
    port: 5678
# 是否走新业务逻辑的开关
isNewPath: false   

已经读取到了配置项

代码语言:javascript复制
2022-02-04 13:53:18.167  INFO 3728 --- [           main] o.s.b.w.embedded.tomcat.TomcatWebServer  : Tomcat started on port(s): 5678 (http) with context path '/configApp'

访问

配置文件优先级

精准配置 会覆盖 与通用配置 相同的配置,然后再和通用配置互补。

验证下

启动服务 ,观察日志

源码

https://github.com/yangshangwei/SpringCloudAlibabMaster

0 人点赞