其他分享
首页 > 其他分享> > 【springcloud长文系列】不要每天重复修改配置了,试试config一处修改病毒式蔓延自动更新配置吧|智能化开发

【springcloud长文系列】不要每天重复修改配置了,试试config一处修改病毒式蔓延自动更新配置吧|智能化开发

作者:互联网


背景

有多少次因为配置文件忘记修改导致重新发布

有多少次因为无法实时修改配置导致重新发布

有多少次同一个配置在不同项目需要重复修改

有多少次因为配置导致项目启动失败!!!

配置服务中心

config官网文档

image-20210601185249248

pom

<dependency>
    <groupid>org.springframework.cloud</groupid>
    <artifactid>spring-cloud-config-server</artifactid>
</dependency>

application.yml

server:
  port: 8070
spring:
  application:
    name: config-server
  cloud.config.server.git:
    uri: https://gitee.com/zxhTom/spring-cloud-demo
    searchPaths: helloworldconfig

启动类

@SpringBootApplication
@EnableConfigServer
public class ConfigApplication {
    public static void main(String[] args) {
        SpringApplication.run(ConfigApplication.class,args);
    }
}

测试

image-20210601191840200

路径规则

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

image-20210602164423275

image-20210602164749382

//后缀包括两种 。 回去找{label}分支下如下格式的文件
{application}/{profile}.[properties|yml]
{application}.[properties|yml]

image-20210603093037737

image-20210603094036785

配置读取客户端

bootstrap.yml

zxhtom: hello-zxhtom
spring:
  cloud:
    config:
      label: master
      name: config-server
      profile: dev    //这里和config-server解析不一样的是,他将访问master分支下的config-server-dev.yml或者properties文件
      uri: http://localhost:8070

application.yml

zxhtom: hello-zxhtom2
server:
  port: 80
  tomcat:
    max-threads: 10

pom

<dependency>
    <groupid>org.springframework.cloud</groupid>
    <artifactid>spring-cloud-starter-config</artifactid>
</dependency>

测试

小瑕疵

动态刷新

image-20210603160303384

仍然不足

奇技淫巧

脱离git

spring.cloud.config.server.git.uri=file://xxxxxx/repository	

多仓库

spring.cloud.config.server.git:
  uri: https://gitee.com/zxhTom/spring-cloud-demo
  searchPaths: helloworldconfig
  repos:
    dev:
      pattern: dev/*
      uri: file:///D:\test\repository\spring-cloud-demo
      searchPaths: helloworldconfig

image-20210603133519473

添加权限

指定本地仓库位置

image-20210603134926335

spring.cloud.config.server.git.basedir: xxxxx	

分模块读取配置

spring.cloud.config.server.git.searchPaths: '{application}'

image-20210603141838254

总结

<dependency>
  <groupid>org.tmatesoft.svnkit</groupid>
  <artifactid>svnkit</artifactid>
  <version>1.8.10</version>
</dependency>

源码

点我下载

标签:git,application,配置,server,修改,自动更新,长文,config,我们
来源: https://www.cnblogs.com/zhangxinhua/p/14885463.html