微服务学习7——统一配置中心

本文探讨微服务架构下面临的挑战,如维护困难、配置安全及更新需求。介绍统一配置中心的概念及其在微服务环境中的作用。通过具体示例展示如何使用Spring Cloud Config Server进行配置管理,包括配置文件的上传、格式转换及访问方式。同时,讲解config server和config client的开发过程,以及如何解决多配置文件共存问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

微服务的一些问题:

(1)不方便维护;

(2)配置内容的安全与权限;

(3)更新配置项目需重启

 

统一配置中心:

远端git ——> config-server <——> 本地git

|

|

各个服务

 

config server开发:

(1)配置注释

@SpringBootApplication

@EnableDiscoveryClient

@EnableConfigServer

public class ConfigApplication {

(2)设置yml文件

eureka和git要设置

 

比如上传了order.yml配置文件,可以进行格式转换,这么获取:

http://localhost:8080/order-a.properties

http://localhost:8080/order-b.properties

http://localhost:8080/order-a.yml

http://localhost:8080/order-b.json

 

如果在yml中加了:

env:

dev

就可以这么访问:

http://localhost:8080/order-dev.json

对于test,则同理

 

如果再加一个属性:

label: release

那么久这么访问:

http://localhost:8080/release/order-dev.json

 

简单说这么调用的:

/{name}-{profiles}.yml

/{label}/{name}-{profiles}.yml

 

name:服务名

profile:环境

label:分支

 

config client开发:

spring:

application:

name: health-check

cloud:

config:

discovery:

service-id: CONFIG

enabled: true

profile: dev

 

然后properties.yml改成 bootstrap.yml。为什么要改名呢,因为如果从config服务中获取配置文件,就会存在两个properties.yml,spring cloud会混淆。

当然如果你在服务器上部署的eureka,是要加上这一段的(本机的8761端口则不用):

eureka:

client:

service-url:

defaultZone: ***

 

另外有一个要点:

当同时存在 order-dev.yml 和 order.yml,config的处理方式是将两个合并之后给出合并后的结果。因此,order.yml可以用作公共的配置文件

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值