springcloud-config配置中心

配置中心主要解决微服务数量多了之后的公共配置文件问题,比如通用配置列表之类,数据库,三方件连接参数之类。

配置中心分为服务端(可集群)和客户端

服务端:

引入服务端依赖

<dependencies>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-config-server</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-netflix-eureka-client</artifactId>
</dependency>
</dependencies>
yml配置文件:注册服务以及配置配置中心仓库地址

 配置文件都放在远程仓库目录下,远程仓库分为git/svn,也可以使用本地仓库 (native) 

我的远程仓库使用gitee ,

服务启动类增加注解

 

 客户端:

引入依赖

 

<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-web</artifactId>
<version>5.3.23</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-netflix-eureka-client</artifactId>
</dependency>
<!-- 配置中心客户端-->
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-config-client</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-bootstrap</artifactId>
</dependency>
<!-- 配置中心重试-->
<dependency>
<groupId>org.springframework.retry</groupId>
<artifactId>spring-retry</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-aop</artifactId>
</dependency>
<!-- 动态更新用于配置中心更新配置文件后,客户端动态更新-->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-actuator</artifactId>
</dependency>

启动类增加注解启动配置

 application.yml配置文件改成bootstrap.yml  加载顺序 bootstrap》application,但是要引入bootstrap依赖才能使用

下图中参数:表明从configModel服务(配置中心)中获取配置文件 userModel-2-dev.yml 

如果使用url表示从具体的单机节点上取配置文件

 使用discover则是从服务configModel(节点群)取配置文件

 

 userModel-2-dev.yml就是我要测试的配置文件 作为微服务8404服务要加载的配置文件

 

 8404服务开了一个rest服务看是否能取到配置的值

 测试:

成功取到配置中心的配置数据

 

测试二:

仓库中的配置文件会被转换成web接口,访问可以参照以下的规则:

  • /{application}/{profile}[/{label}]
  • /{application}-{profile}.yml
  • /{label}/{application}-{profile}.yml
  • /{application}-{profile}.properties
  • /{label}/{application}-{profile}.properties

以userModel-2-dev.yml为例子,它的application是userModel-2,profile是dev。client会根据填写的参数来选择读取对应的配置。

当配置了配置中心后可以直接通过url访问配置中心的配置文件

 

测试三:

加载多个配置文件name 直接用, 隔开

 拼接的值来自两个配置文件

 

posted on   丶柚子  阅读(19)  评论(0编辑  收藏  举报

相关博文:
阅读排行:
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· winform 绘制太阳,地球,月球 运作规律
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 上周热点回顾(3.3-3.9)
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
历史上的今天:
2018-06-16 oracle 导入导出数据
< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5

导航

统计

点击右上角即可分享
微信分享提示