springcloud config 提取公共参数
每个微服务都有自己的配置文件application-local.yml和bootstrap.yml, 这个两个配置文件的读取顺序是先读取bootstrap.yml文件,在读取application-local.yml文件,参数名相同,则后者覆盖前者。
提取公共参数是因为,eureka、zipkin等配置都是一样的,每一个微服务都要进行配置,很繁琐,而且配置一多,就心烦。
提取公共配置参数,要借助Spring Cloud Config,我这里是把配置文件放在了gitlab上,当然你也可以放在GitHub和其他相关的代码托管平台上。如下图

spring cloud config 官网里有这么一段话:
With file-based (git, svn, and native) repositories, resources with file names in application* (application.properties, application.yml, application-*.properties, and so on) are shared between all client applications. You can use resources with these file names to configure global defaults and have them be overridden by application-specific files as necessary.
The #_property_overrides[property overrides] feature can also be used for setting global defaults, with placeholders applications allowed to override them locally.
也就是说gitlab上的application-local.yml和application-test.yml可以作为全局的配置文件,后面的-test和-local是作为占位符一样的存在。
占位符就是运行环境,dev、test、pro等,当然也可以自己制定名字,记得在读取config文件时指定好。就是下图中profile:local的配置项。

一定要分清读取顺序:
首先会读取bootstrap.yml里面的参数,
然后会读取gitlab上application.yml上的配置,
最后读取微服务本地的application.yml文件。
参数名相同,后者覆盖前者。
我本地的配置文件如下图:

这样你就可以把通用的公共配置参数提取到gitlab上的application文件上了,根据环境指定运行时要读取的文件,也就是占位符(-test、-local)
springcloud config 提取公共参数的更多相关文章
- webpack提取公共js代码
webpack打包js代码与提取公共js代码分析 webpack提取公共js代码示例 一.分析 webpack默认打包js代码时,是将从入口js模块开始,将入口js模块所依赖的js以及模块逐层依赖的模 ...
- webpack散记---提取公共代码
(1)作用: 减少代码冗余 提高加载速度 (2)来源 commonsChunkPlugin webpack.optimize.CommonsChunkPlugin (3)配置 { plugins:[ ...
- springcloud情操陶冶-springcloud config server(二)
承接前文springcloud情操陶冶-springcloud config server(一),本文将在前文的基础上讲解config server的涉外接口 前话 通过前文笔者得知,cloud co ...
- springcloud情操陶冶-springcloud config server(一)
承接前文springcloud情操陶冶-springcloud context(二),本文将在前文基础上浅析下ConfigServer的工作原理 前话 根据前文得知,bootstrapContext引 ...
- [转] 用webpack的CommonsChunkPlugin提取公共代码的3种方式
方式一,传入字符串参数 new webpack.optimize.CommonsChunkPlugin(‘common.js’), // 默认会把所有入口节点的公共代码提取出来,生成一个common. ...
- webpack4 系列教程(三): 多页面解决方案--提取公共代码
这节课讲解webpack4打包多页面应用过程中的提取公共代码部分.相比于webpack3,4.0版本用optimization.splitChunks配置替换了3.0版本的CommonsChunkPl ...
- 详解用webpack的CommonsChunkPlugin提取公共代码的3种方式(注意webpack4.0版本已不存在)
Webpack 的 CommonsChunkPlugin 插件,负责将多次被使用的 JS 模块打包在一起. CommonsChunkPlugin 能解决的问题 在使用插件前,考虑几个问题: 对哪些 c ...
- jmeter 查看提取的参数
需求:查看“传入的参数”或者“正则表达提取的参数”等...... 解决:添加Debug Sampler组件,不需要配置,直接使用默认 1.使用CSV Data Set Config组件“传入的参数”直 ...
- 带你入门SpringCloud统一配置 | SpringCloud Config
前言 在微服务中众多服务的配置必然会出现相同的配置,如果配置发生变化需要修改,一个个去修改然后重启项目的方案是绝对不可取的.而 SpringCloud Config 就是一个可以帮助你实现统一配置选择 ...
随机推荐
- 微软必应Bing搜索引擎这几天无法访问!
一.用必应(Bing)临时域名: www2.bing.com 或者 www4.bing.com 临时域名博主验证有效 二.修改hosts文件: 用户只需要暂时修改下host然后坐等微软服务器恢复后再删 ...
- HDU - 1695 GDU
莫比乌斯反演基础. 用rep 去掉重复的对数,rep一定是奇数( 因为有(1,1 ) ) #include <bits/stdc++.h> using namespace std; #de ...
- 牛客小白月赛13 小A的回文串(Manacher)
链接:https://ac.nowcoder.com/acm/contest/549/B来源:牛客网 题目描述 小A非常喜欢回文串,当然我们都知道回文串这种情况是非常特殊的.所以小A只想知道给定的一个 ...
- CMD运行JAVA出现编码GBK的不可映射字符处理方法?
方法一: (将notepad编辑器的编码方式改为ANSI后再进行程序代码的编译,将之前乱码的汉字删除重新输入正常的汉字) 1.notepad编辑器默认编码方式为UTF-8时,CMD里面执行javac ...
- Python __dict__属性详解
本文转载自 https://www.cnblogs.com/alvin2010/p/9102344.html 感谢 //偏执 大佬 我们都知道Python一切皆对象,那么Python究竟是怎么管理对象 ...
- mysql 悲观锁与乐观锁的理解
悲观锁与乐观锁是人们定义出来的概念,你可以理解为一种思想,是处理并发资源的常用手段. 不要把他们与mysql中提供的锁机制(表锁,行锁,排他锁,共享锁)混为一谈. 一.悲观锁 顾名思义,就是对于数据的 ...
- 【Thread】CountdownEvent任务并行[z]
System.Threading.CountdownEvent 是一个同步基元,它在收到一定次数的信号之后,将会解除对其等待线程的锁定. CountdownEvent 专门用于以下情况:您必须使用 ...
- hbase-连接流程
root和meta表 在版本0.9.8之前,存在root表,之后的版本中去除了root表,meta表主要记录了每个表在region的分布情况. meta结构 从表格中可以看出,rowkey格式:tab ...
- mr微博内容推荐
第一次迭代 1 package com.laoxiao.mr.weibo; import java.io.StringReader; import org.apache.commons.lan ...
- ubuntu 18.04配置静态ip,解决无法上网问题,解决resolv.conf配置文件被覆盖
Netplan 是 Ubuntu 17.10 中引入的一种新的命令行网络配置实用程序,用于在 Ubuntu 系统中轻松管理和配置网络设置. 它允许您使用 YAML 格式的描述文件来抽像化定义网络接口的 ...