SrpingCloud 之SrpingCloud config分布式配置中心实时刷新

默认情况下是不能及时获取变更的配置文件信息

Spring Cloud分布式配置中心可以采用手动或者自动刷新

 1、手动需要人工调用接口   监控中心

 2、消息总线实时通知  springbus

 

动态刷新数据

在SpringCloud中有手动刷新配置文件和实时刷新配置文件两种方式。

手动方式采用actuator端点刷新数据

实时刷新采用SpringCloud Bus消息总线

 

 

  

actuator端点刷新数据

在config clientr引入 

      <dependency>
         <groupId>org.springframework.boot</groupId>
         <artifactId>spring-boot-starter-actuator</artifactId> 
     </dependency>

  

yml中开启监控断点

management:
  endpoints:
    web:
      exposure:
        include: "*"

 同时在controller加 @RefreshScope 

package com.toov5.controller;

import org.springframework.beans.factory.annotation.Value;
import org.springframework.cloud.context.config.annotation.RefreshScope;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

@RestController
@RefreshScope
public class TestController {
    @Value("${motto}")   //配置的key
  private String motto;
    
    @RequestMapping("/getMotto")
    public String getMotto() {
        return motto;
    }
}

 

开启: 修改git上的配置文件信息

必须要用post请求!

http://127.0.0.1:8882/actuator/refresh

 

成功!

 每个客户端都有监听,效果不是很好这样的方式。手动刷新比较好一些。改完了自己手动刷新下 post 调用一下

高级的spring cloud bus: https://www.cnblogs.com/toov5/p/10293755.html 

posted @ 2018-11-15 23:23  toov5  阅读(1038)  评论(0编辑  收藏  举报