读取nacos_使用nacos配置多环境切换
spring.profiles.active=devspring.application.name=demo
然后建立新的配置文件通过配置 spring.profiles.active,系统根据你的配置,自动从application-dev.properties,或者application-test.properties读取配置,实现了多环境的切换.但这只是服务器读取本地配置时的操作,当我们系统分布式部署,需要配置集中管理时,如何实现多环境的切换呢?现在以阿里的nacos为例,介绍一下本人的使用心得.请自行搭建nacos服务.pom文件如下:
xml version="1.0" encoding="UTF-8"?><project xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://maven.apache.org/POM/4.0.0" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"><modelVersion>4.0.0modelVersion><groupId>comgroupId><artifactId>demoartifactId><version>1.0version><properties><project.build.sourceEncoding>UTF-8project.build.sourceEncoding><project.reporting.outputEncoding>UTF-8project.reporting.outputEncoding><java.version>1.8java.version><nacos.version>2.2.1.RELEASEnacos.version><nacos.client.version>1.3.0nacos.client.version>properties><dependencies><dependency><groupId>com.alibaba.cloudgroupId><artifactId>spring-cloud-starter-alibaba-nacos-discoveryartifactId><version>${nacos.version}version><exclusions><exclusion><artifactId>httpclientartifactId><groupId>org.apache.httpcomponentsgroupId>exclusion><exclusion><artifactId>jackson-coreartifactId><groupId>com.fasterxml.jackson.coregroupId>exclusion>exclusions>dependency> <dependency><groupId>com.alibaba.cloudgroupId><artifactId>spring-cloud-starter-alibaba-nacos-configartifactId><version>${nacos.version}version>dependency> <dependency><groupId>com.alibaba.cloudgroupId><artifactId>spring-cloud-starter-alibaba-sentinelartifactId><version>${nacos.version}version>dependency>dependencies>project>
bootstrap.yml如下:
# Springspring: application: # 应用名称 name: demo profiles: # 环境配置 active: dev cloud: nacos: discovery: # 服务注册地址 server-addr: 192.168.5.80:8848 # 服务注册在哪个命名空间 一般通过这个,去选择使用dev ,test 或者 prd环境 # 通过命名空间可使 配置互不干扰 namespace: ${spring.profiles.active} # 服务注册在哪个组里面 此处配置 可通过nacos 服务管理-服务列表 选择组 查看某服务的实例. # 用以区分 同一nacos里的不同项目 group: groupA config: # 配置中心地址 server-addr: 192.168.5.80:8848 namespace: ${spring.profiles.active} # 配置文件格式 file-extension: yml # 配置文件需在此处列出 shared-configs: - dataId: conf.yml group: groupA refresh: true
此时,我们只需在本地修改spring.profiles.active 即可控制系统读取的环境配置.修改pring.cloud.nacos.config.shared-configs 里的 dataId和group 即可指定读取的配置.举例:在nacos分别配置dev,test命名空间,并分别建立 group为groupA的conf.yml,group为groupB的conf.,并设置key student.name.(字段值自行配置),在程序中读取并打印字段值.情景1:同一项目的不同环境配置配置: spring.profiles.active=devspring.cloud.nacos.config.shared-configs[0].group=groupAspring.cloud.nacos.config.shared-configs[0].dataId=conf.yml结果: 值:dev-groupA配置: spring.profiles.active=testspring.cloud.nacos.config.shared-configs[0].group=groupAspring.cloud.nacos.config.shared-configs[0].dataId=conf.yml结果 : 值:test-groupA情景2:不同项目的同一环境配置配置: spring.profiles.active=devspring.cloud.nacos.config.shared-configs[0].group=groupAspring.cloud.nacos.config.shared-configs[0].dataId=conf.yml结果: 值:dev-groupA配置: spring.profiles.active=testspring.cloud.nacos.config.shared-configs[0].group=groupBspring.cloud.nacos.config.shared-configs[0].dataId=conf.yml结果 : 值:test-groupB此时,我们已经成功的实现了多个项目共用同一个nacos,且进行了多环境配置.查看nacos服务列表:如图,此时我们可以通过筛选group进行查看自己程序的实例情况.完结.
读取nacos_使用nacos配置多环境切换相关推荐
- spring cloud nacos 配置多环境打包
spring cloud nacos 配置多环境打包 一.前言 因需要将项目打包给N多第三方,他们有各自的nacos地址,又需要实现代码无侵入(配置文件存在很多版本如 application-tocd ...
- SpringCloudAlibaba【四】Nacos Config 多环境切换与公共配置
背景 前面我们整合了Nacos Config,并验证了动态配置刷新的效果了,现在我们来进一步学习一下Nacos Config的多环境配置和通用环境配置相关的内容 环境 Windows10 JDK1.8 ...
- SpringBoot多环境动态环境切换(nacos)
目录 1. 环境变量切换 1.1 建立各环境配置文件 1.2 设置环境变量 2. nacos配置中心动态切换 2.1 配置文件 2.2 nacos配置 2.3 启动服务 3. 同一nacos环境下服务 ...
- springboot 读取nacos配置的流程和数据变化实时更新机制
一.NACOS配置如下 1.bootStrap.yaml 配置 spring:profiles:active: devapplication:name: newdaycloud:nacos:disco ...
- SpringCloud(若依微服务版)读取Nacos中的配置以及多个服务共享Nacos配置的使用
场景 若依微服务版手把手教你本地搭建环境并运行前后端项目: https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/109363303 在上 ...
- vuex webpack 配置_vue+webpack切换环境和打包之后服务器配置
import axios from 'axios' import store from '../store/index' const rootUrl =process.env.API_ROOT//创建 ...
- linux 切换pip路径_windows环境下面如何快速配置pip环境变量
首先我们要知道什么是pip,为什么要使用pip. pip 是一个安装和管理 Python 包的工具 , 是 easy_install 的一个替换品.本文将详细说明 安装 pip 的方法和 使用 pip ...
- uni-app cli创建项目打包并配置多环境读取配置文件信息
uni-app cli创建配置多环境读取配置文件信息 在项目src下创建以下配置文件 在package.json中添加以下代码 VUE_APP_ENV:用来区分环境 NODE_ENV:用来定死打包目录 ...
- SpringCloud读取Nacos配置中心报错:Could not resolve placeholder ‘xxx’ in value ‘${xxx}
hello,我是灰小猿,一个超会写bug的程序员! 近期在写一个spring cloud Alibaba读取Nacos配置中心远程配置文件的内容时,出现了几个比较坑的bug,在此记录一下,帮大家避避坑 ...
最新文章
- ARMCM3汇编指令
- 看完这篇还不会kafka,我跪榴莲!
- 【Python爬虫】Requests库网络爬虫实战
- 整活插件 炉石传说_炉石传说:国服再搞大动作?官方插件神秘新功能压力测试开启...
- 普通索引和唯一索引,难道还分不清
- java list 在头部添加6_【Java提高十六】集合List接口详解
- 中嵌套的页面如何操作父页面_UI设计中签到页面如何设计
- Ridge regression
- 未来的建筑行业项目管理集成系统展望
- docker探索-在centos6.5中安装docker(三)
- 12 序列化器Serializer的使用
- IDEA 解决 artifacts not found 问题
- 9个适合上班族晚上在家就能赚钱的副业推荐(建议收藏)
- 马克鳗标记及文字图片工具安装步骤mac版本
- HTML常见标签的用法
- hive的搭建及其入门一
- oracle----存储过程
- 转:我收到一份《中国焦虑图鉴》
- java simpledateformat gmt_利用SimpleDateFormat进行时间的跨时区转换 - Java
- python生成微信好友头像心形照片墙
热门文章
- python 生成器_python 生成器 - 刘江的python教程
- python与excel-Python与Excel 不得不说的事情
- python经典程序实例-你不知道的Python语言的经典五大案例
- python自学行吗-零基础如何学习Python?看Python视频就可以吗?
- 学python需要什么软件-学python需要什么软件
- 最专注和高效的查词法?网易有道词典笔2.0评测
- 长虹发布AI 3.0 引领电视行业跨入AI3.0时代
- linux下docker部署nginx
- c++ map是有序还是无序的_go 学习笔记之数组还是切片都没什么不一样
- c 与java性能测试_JNI只C性能测试