SpringCloudAlibaba【四】Nacos Config 多环境切换与公共配置
背景
前面我们整合了Nacos Config,并验证了动态配置刷新的效果了,现在我们来进一步学习一下Nacos Config的多环境配置和通用环境配置相关的内容
环境
Windows10
JDK1.8
IDEA2021
Maven2.6
下载安装Nacos
Windows安装Nacos
修改配置
基于上文的项目,进行修改
YML
spring:application:name: nacos-configcloud:nacos:config:server-addr: localhost:8848file-extension: ymlprofiles:active: prod
Nacos配置
注:Data Id = spring.application.name + [-spring.profile.active]. + file-extension
测试
下面从Nacos的不同环境配置进一步了解Nacos Config
生产环境
YML配置如上
启动项目,浏览器输入接口地址
测试环境
修改YML配置
spring:application:name: nacos-configcloud:nacos:config:server-addr: localhost:8848file-extension: ymlprofiles:active: test
Nacos新增test环境
配置
重启项目
浏览器输入接口地址
公共环境
YML
spring:application:name: nacos-configcloud:nacos:config:server-addr: localhost:8848file-extension: ymlprofiles:active: test
Nacos新建公共配置,Data Id以spring.application.name命名
通用配置内容
修改接口,我们看是否能够在test环境
下同时访问到通用配置
内容
package com.nacos.controller;import org.springframework.beans.factory.annotation.Value;
import org.springframework.cloud.context.config.annotation.RefreshScope;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RestController;@RestController
@RefreshScope
public class NacosConfigController {@Value("${str}")private String str;@Value("${commonStr}")private String commonStr;@GetMapping("/")public String getConfig() {return str;}@GetMapping("/common")public String getCommonConfig() {return commonStr;}}
重启服务,访问接口地址
- 测试环境配置
- 公共环境配置
小结:即使是在测试环境下,也可以获取到公共的配置
共享环境
如果是想要用到其他的Nacos配置文件,要怎么处理?
下面在Nacos新建两个配置文件,如下
- 共享Redis配置
- 共享MQ配置
修改YML
spring:application:name: nacos-configcloud:nacos:config:server-addr: localhost:8848file-extension: ymlshared-configs[0]:data_id: redis.ymlrefresh: trueshared-configs[1]:data_id: mq.ymlrefresh: trueprofiles:active: test
修改接口,添加获取Redis和mq的接口
package com.nacos.controller;import org.springframework.beans.factory.annotation.Value;
import org.springframework.cloud.context.config.annotation.RefreshScope;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RestController;@RestController
@RefreshScope
public class NacosConfigController {@Value("${str}")private String str;@Value("${commonStr}")private String commonStr;@Value("${redis}")private String redis;@Value("${mq}")private String mq;@GetMapping("/")public String getConfig() {return str;}@GetMapping("/common")public String getCommonConfig() {return commonStr;}@GetMapping("/redis")public String getRedisConfig() {return redis;}@GetMapping("/mq")public String getMqCommonConfig() {return mq;}}
重启项目,浏览器输入对应接口地址
- redis
- mq
小结:在test环境下可以通过shared-configs[0]
或者extension-configs[0]
配置多个其他配置文件
项目代码
代码
SpringCloudAlibaba【四】Nacos Config 多环境切换与公共配置相关推荐
- SpringCloud Alibaba微服务实战(四) - Nacos Config 配置中心
说在前面 Nacos 是阿里巴巴开源的一个更易于构建云原生应用的动态服务发现.配置管理和服务管理平台.Nacos Config就是一个类似于SpringCloud Config的配置中心. 一.启动N ...
- (企业案例)Nacos Config 进阶使用
文章目录 一.SpringBoot 使用 Nacos Config 实现多环境切换 1. 现象 2. 引入依赖 3. 添加bootstrap.yaml配置文件 4. 配置对应关系图 5. 文件格式简述 ...
- 【Spring-Cloud-Alibaba】Nacos配置中心
Nacos配置中心 源码下载 https://yangjing191928.coding.net/public/spring-cloud-alibaba/spring-cloud-alibaba/gi ...
- Blade-demo之Nacos Config
Nacos Nacos Config 需要在 bootstrap.properties 中配置 Nacos server 的地址和应用名 之所以需要配置 spring.application.name ...
- nacos 环境切换_Nacos多环境配置
Nacos官网地址 nacos-server-1.3.2(我这里是下载的windows环境配置) 这里下载的是1.3.2的版本,其他环境启动命令请看官网 运行命令 startup.cmd -m sta ...
- 读取nacos_使用nacos配置多环境切换
在程序开发,部署中,我们总要切换不同的环境,比如开发环境,测试环境,生成环境,或者预发布环境,如果每次都手动一个一个去改配置,重复劳动,耗费时间不说,还极有可能修改错误,那有没有好的方法切换不同环境的 ...
- SpringBoot多环境动态环境切换(nacos)
目录 1. 环境变量切换 1.1 建立各环境配置文件 1.2 设置环境变量 2. nacos配置中心动态切换 2.1 配置文件 2.2 nacos配置 2.3 启动服务 3. 同一nacos环境下服务 ...
- Spring Cloud Alibaba - 18 Nacos Config配置中心加载相同微服务的不同环境下的通用配置
文章目录 需求 实现 Step 1 Nacos Config 新增公共配置 Step 2 验证 配置文件优先级 源码 需求 举个例子,同一个微服务,通常我们的servlet-context 都是相同的 ...
- Spring Cloud Alibaba —— Nacos Config 配置中心
导航 引言 一.什么是配置中心 二.常见的配置中心组件 三.Nacos Config 入门 四.Nacos Config 动态配置 4.1 硬编码方式(默认支持动态生效) 4.2 属性注入 五.配置共 ...
最新文章
- .net知识和学习方法系列(七)string类型
- 02-NVIDIA Jetson TX2 通过JetPack 3.1刷机完整版(踩坑版)
- 学习笔记(49):Python实战编程-place布局
- 支付宝 PEM routines:PEM_read_bio:no start line
- 厉害!中国AI企业50强榜单!看完员工待遇,网友:我酸了!
- java 树形图构建
- 天线下倾角示意图_《天线和下倾角.ppt
- BI软件应用在哪些方面
- [翻译]Scott Mitchell的ASP.NET2.0数据教程中文版索引(Canceled!!)
- Linux第一个正式版本,你安装的第一个Linux系统是什么版本的,成功没有啊?
- 前端技巧总结---持续更新
- 2020-12-22 ACM集训一(二维数组与结构体)
- 《失控》之五--共同进化
- 名编辑电子杂志大师教程 | 设置电子杂志的高宽比例
- XGBoost的目标函数推导和分裂增益计算
- CA认证及http实现方法
- 物流围城 让今年双11商家拿什么发货?
- 2021年四川高考成绩及录取结果查询,2021年四川高考录取状态查询系统,录取结果什么时候出来公布...
- 172.mybatisPlus的实际应用
- 计算机考试中粗实线,国开电大 计算机绘图(终结性考试)大作业答案