SpringBoot 对 SpringCloud Nacos 的文件配置

背景:

一个项目有多套环境,如:开发环境(dev)、测试环境(test)、生产环境(prod),并且每种环境的配置项都不相同。比如:测试环境定时任务的时间要设置的短一些,方便测试整个流程,而生产环境的定时任务时间则不能设置这么短。

同一套环境又有多个微服务,不同微服务的配置项自然也不相同。

同一个微服务又有多个配置,比如: common.properties、database.properties 等等。

Nacos 的数据隔离

因此 Nacos 帮我们实现了数据隔离:

· Namespace(命名空间)区分不同环境(默认为public)

· Group(分组)区分不同微服务

· Data-id(数据集)区分不同的配置文件

如图 dev 环境下的配置文件:

但我们需要通过写好配置文件来实现按需加载。

SpringBoot 配置文件实现按需加载

1. 如图 在 application.yaml 文件中进行基础配置:

其中:${表示将上面 spring.profiles.active 这里的配置项(prod)填充到这里},即选择生产环境。冒号后面的 public 表示如果没有配置 spring.profiles.active,则默认使用 public 环境

config:
        namespace: ${spring.profiles.active:public} 

2. 多文档进行不同环境的配置

其中:

spring:
        config:
                import:
                        - nacos:common.properties?group=order
                        - nacos:database.properties?group=order
                activate:
                        on-profile: dev

该配置表示当处于 dev (开发环境)的时候,需要引入: common.properties、database.properties 这两个配置文件。并且这两个文件的 group 为 order,也就是订单微服务下的配置文件。如果想要切换环境,只需要在这里对 prod(生产环境)进行修改即可:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值