SpringCloud Config配置中心实现git实时更新自定义配置文件

SpringCloud Config 配置中心

作用:

把项目中的所有配置文件上传到git仓库,统一管理,版本控制,也可以控制分支

准备:

新建一个普通的Project,把所有需要管理的配置文件拷贝到这个Project中,并且重命名

命名规则为:应用名-后缀名.yml

例如:item-service-dev.yml

为了防止远程下载的配置覆盖掉IDE的启动参数–server.port=8101

所以需要在每个配置文件中加入一个配置:

spring: 
  cloud:
    config:
      override-none: true

配置:

把该项目同步到远程git仓库后,创建一个Spring Starter项目

添加依赖:Config Server和Eureka Discovery Client

配置中心项目需要连接Eureka注册

yml文件:

spring:
  application:
    name: config-server
  cloud:
    config:
      server:
        git:
          uri: https://gitee.com/aut_demon/sp-config.git
          search-paths: config
          # username: 
          # password:
server:
  port: 6001
  
eureka:
  client:
    service-url:
      defaultZone: http://eureka1:2001/eureka, http://eureka2:2002/eureka

注意,这里的仓库是设置为公开的,如果是私有的,需要加入username和password

主启动类加入注解:

@EnableConfigServer

在所有需要管理配置文件的项目中,加入一个依赖:Config Client,以及配置文件:bootstrap.yml(文件名称固定不可变)

#引导配置
#先于应用配置加载

#设置连接配置中心,从配置中心下载配置信息,然后再启动应用
#1.连接eureka,从eureka中获得配置中心的地址
eureka:
  client:
    service-url:
      defaultZone: http://eureka1:2001/eureka,http://eureka2:2002/eureka
    
#连接配置中心,从配置中i性能下载指定的配置文件
spring:
  cloud:
    config:
      discovery:
        enabled: true
        service-id: config-server
      name: user-service
      prifile: dev

可能遇到的问题:

1.文件名写错,导致无法从服务器无法获取配置文件

检查用浏览器连接localhost:6001/配置文件,来确保配置文件是否正常

2.依赖没有加全或者配置文件写错

依赖重新去掉重新装,配置文件检查不要写错,可以从浏览器测试的连接路径中复制

3.无法连接到服务器

必须先启动Eureka,然后再启动Config配置中心项目,注册完毕后才可以连接到配置文件

配置文件自动刷新

作用:

更新远程git仓库里后,实现刷新配置文件,一般仅用作刷新自定义配置

限制:

无法刷新核心配置,比如端口,项目名,Eureka连接信息等

配置方法:

需要配置刷新参数的项目中添加依赖:actuator

需要暴露监控端点:refresh

management:
  endpoints:
    web:
      exposure:
        include: refresh

此时需要把配置文件上传到远程git仓库,并重启项目更新配置

在需要刷新数据的类上添加注解:

@RefreshScope

监控端点:

localhost:8101/actuator/refresh

此端点仅支持Post访问,需要用到PostMan,并且访问不要带任何参数

每次访问该端点,服务器就会从远程git仓库下载更新配置文件,并且在有@RefreshScope注解的类中更新配置文件参数

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值