首页 > 其他分享 >springcloud -config配置中心 整合github 或者gitee 单个刷新配置

springcloud -config配置中心 整合github 或者gitee 单个刷新配置

时间:2023-07-08 21:44:46浏览次数:43  
标签:github springcloud boot gitee spring org config yml cloud

配置中心,通过从开源仓库上拉去配置,而不是在本地修改

服务端配置 cloud-config-center-3344

         <dependency>
             <groupId>org.springframework.cloud</groupId>
             <artifactId>spring-cloud-config-server</artifactId>
         </dependency>
         <dependency>

application.yml配置

 server:
   port: 3344
 spring:
   application:
     name:  cloud-config-center #注册进Eureka服务器的微服务名
   cloud:
     config:
       server:
         git:
           uri: [email protected]:bighuo/springcloud-config.git #GitHub上面的git仓库名字
         ####搜索目录
           search-paths:
             - springcloud-config
       ####读取分支
       label: master
 #服务注册到eureka地址
 eureka:
   client:
     service-url:
       defaultZone: http://localhost:7001/eureka
  
 ​

主启动类

 @SpringBootApplication
 @EnableConfigServer  // 主要注解
 public class ConfigCenterMain3344
 {
     public static void main(String[] args) {
             SpringApplication.run(ConfigCenterMain3344.class, args);
     }
 }

访问localhost:3344/master/config-client.yml 可以获取到内容 对应格式/{application}-{profile}.yml config-client.yml

             /{name}-{profiles}.yml
  
 /{label}-{name}-{profiles}.yml
  
 label:分支(branch)
 name :服务名
 profiles:环境(dev/test/prod)

客户端配置 cloud-config-client-3355 导入依赖

 <?xml version="1.0" encoding="UTF-8"?>
 <project xmlns="http://maven.apache.org/POM/4.0.0"
          xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
          xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
     <parent>
         <artifactId>mscloud</artifactId>
         <groupId>com.atguigu.springcloud</groupId>
         <version>1.0-SNAPSHOT</version>
     </parent>
     <modelVersion>4.0.0</modelVersion>
 ​
     <artifactId>cloud-config-client-3355</artifactId>
 ​
     <dependencies>
         <dependency>
             // 核心依赖
             <groupId>org.springframework.cloud</groupId>
             <artifactId>spring-cloud-starter-config</artifactId>
         </dependency>
         <dependency>
             <groupId>org.springframework.cloud</groupId>
             <artifactId>spring-cloud-starter-netflix-eureka-client</artifactId>
         </dependency>
         <dependency>
             <groupId>org.springframework.boot</groupId>
             <artifactId>spring-boot-starter-web</artifactId>
         </dependency>
         
         // 想要被发现和监控一定要配置这个依赖
         <dependency>
             <groupId>org.springframework.boot</groupId>
             <artifactId>spring-boot-starter-actuator</artifactId>
         </dependency>
 ​
         <dependency>
             <groupId>org.springframework.boot</groupId>
             <artifactId>spring-boot-devtools</artifactId>
             <scope>runtime</scope>
             <optional>true</optional>
         </dependency>
         <dependency>
             <groupId>org.projectlombok</groupId>
             <artifactId>lombok</artifactId>
             <optional>true</optional>
         </dependency>
         <dependency>
             <groupId>org.springframework.boot</groupId>
             <artifactId>spring-boot-starter-test</artifactId>
             <scope>test</scope>
         </dependency>
     </dependencies>
 </project>
 ​

applicaiton.yml是用户级的资源配置项 bootstrap.yml是系统级的,优先级更加高

配置bootstrap.yml 优先级是最高的这个文件

 server:
   port: 3355
 ​
 spring:
   application:
     name: config-client
   cloud:
     #Config客户端配置
     config:
       label: master #分支名称
       name: config #配置文件名称
       profile: dev #读取后缀名称   上述3个综合:master分支上config-dev.yml的配置文件被读取http://config-3344.com:3344/master/config-dev.yml
       uri: http://localhost:3344 #配置中心地址k
 ​
 #服务注册到eureka地址
 eureka:
   client:
     service-url:
       defaultZone: http://localhost:7001/eureka
 ​

主要启动类

 /**
  * @auther zzyy
  * @create 2020-02-08 11:09
  */
 @EnableEurekaClient
 @SpringBootApplication
 public class ConfigClientMain3355
 {
     public static void main(String[] args)
     {
         SpringApplication.run(ConfigClientMain3355.class,args);
     }
 }

 

业务测试类

 @RestController
 public class ConfigClientController
 {
     @Value("${config.info}")
     private String configInfo;
 ​
     @GetMapping("/configInfo")
     public String getConfigInfo() 
     {
         return configInfo;
     }
 }

手动刷新

修改3355客户端服务,加上最新配置 yaml文件

 # 暴露监控端点
 management:
   endpoints:
     web:
       exposure:
         include: "*"

通过发送post请求通知刷新 curl -X POST "http://localhost:3355/actuator/refresh"

标签:github,springcloud,boot,gitee,spring,org,config,yml,cloud
From: https://www.cnblogs.com/huoziqi/p/17537939.html

相关文章

  • 吹爆!阿里大牛MySQL优化笔记有多强?才在GitHub被BATJ联手封杀
    今年的春招很猛,公司的大神也变多了。。。来了个新同事,一看是个二本生,还是非科班出身,刚30岁。。。结果没想到人家上来就把现有项目的性能优化了一遍,直接给公司节省了一半的成本,这种“王炸”打法,直接给所有人整懵了。 一问情况,才知道这位仁兄也是一路被虐过来的。去年年底被裁......
  • github连接不上
    1.确定是否github.com网址映射正确,通过[email protected]或者nslookup github.com查看,有时候,github.com会被映射到127.0.0.12.确认ssh公钥是否配置正确,通过[email protected],可以查看使用的ssh-key,同时在github中的SSHkeys中查看对应的key使用时间, ......
  • Springcloud2021+Nacos2.2+Dubbo3+Seata1.6实现分布式事务
    示例代码地址:https://gitee.com/gtnotgod/Springcloud-alibaba.git更详细参考Gitee完整的项目:https://gitee.com/gtnotgod/Springcloud-alibaba.git官网下载Nacoshttps://nacos.io/zh-cn/index.html压缩包解压:配置Nacos:**/nacos/conf/application.properties#********......
  • Ubuntu系统部署springcloud+nacos遇到的问题。
    1,部署上的jar包运行正常,但是通过浏览器不能访问,telnet+IP+端口连接不通。小皮面板访问后台接口也是不通但是小皮面板可以通过浏览器访问。具体问题暂未解决。2,改用docker部署,将jar包和前端打的包,nacos,redis等打成镜像,放进docker里对外映射出端口可以正常访问。在用docker部署过......
  • springcloud -hystrix服务熔断机制
    服务熔断:就是在错误率达到规定百分比的时候会开启,然后隔断消费者和服务端,在不断访问提升正确率后将其关闭,回复调用链路servicehystrix-payment-order8001增加方法  //=========服务熔断 @HystrixCommand(fallbackMethod="paymentCircuitBreaker_fallback",commandPro......
  • springcloud- hystrix服务降级简单讲解
    在出现错误的时候我们需要即使进行处理并返回提示信息给用户实现交互友好化,我们使用一下注解来实现服务降级功能,一般我们将服务降级配置在客户端相关注解provider8001 ​ @EnableCircuitBreaker //服务降级激活注解服务端主启动类 @HystrixCommand(fallbackMethod=......
  • springcloud - openFeign的简单配置和使用
    openFeign第一步:导入依赖     <dependency>       <groupId>org.springframework.cloud</groupId>       <artifactId>spring-cloud-starter-openfeign</artifactId>     </dependency>第一步:进行配置 server: port:8......
  • springcloud - ribbon简单提点 + 手写轮询算法
    ribbon(依然有人使用,还是很难替换掉)负载均衡+restTemplate实现rpc远程调用新版eureka依赖集成好了ribbon,可以不用重新导入consumer远程调用provider使用到了一个resttemplate类在消费者端的consumer中调用   @Resource   privateRestTemplaterestTemplate;/......
  • 基于Jenkins+Gitee实现SpringBoot项目自动化部署(Docker版)
    前言:上一篇笔记:基于Jenkins+Gitee实现SpringBoot项目自动化部署(非Docker版)。本篇笔记介绍一下Docker版本的Jenkins如何实现项目自动化部署。本案例基于Linux CentOS7服务器,防火墙开放8080端口(Jenkins使用),80端口(项目使用),云服务器直接在控制台配置安全规则即可。1......
  • springcloud - consul的简单使用和配置
    第一步:导入依赖 <!--   consul-->     <dependency>       <groupId>org.springframework.cloud</groupId>       <artifactId>spring-cloud-starter-consul-discovery</artifactId>     </dependency>第二......