Spring Config 配置中心和Spring Bus配合使用的一些坑

个人觉得bus这个东西这是坑多 折腾好一会 ( 使用actuator/bus-refresh 而不用bus/refresh)

 首先Config 和 Client 项目都添加如下配置

 
  
management.endpoints.enabled-by-default=true
management.endpoints.sensitive=false
management.endpoints.enabled=true

management.endpoint.configprops.enabled=true
management.endpoint.beans.enabled=true
management.endpoint.shutdown.enabled=true

management.endpoints.web.exposure.include=*
   
            org.springframework.cloud
            spring-cloud-starter-bus-amqp
        


1。网上到处都在说post - bus/refresh来刷新,但是现在SpringBoot之后 根本就是不存在这个路径,查看项目启动可以看到搜索日志关键字:Mapping

Spring Config 配置中心和Spring Bus配合使用的一些坑_第1张图片

所以 他们所说的 bus/refresh 到底是哪里来的?谁来告诉老夫一下!!!明明就是actuator/bus-refresh

2.修改git上面的配置参数 

Spring Config 配置中心和Spring Bus配合使用的一些坑_第2张图片

3.用postMan请求 做刷新  不要有head信息 请求形式用 raw

Spring Config 配置中心和Spring Bus配合使用的一些坑_第3张图片

根本没有任何数据返回!!! 尼玛 我看别人的日志都有数据返回!这又是什么情况? 但是 post出去之后 我们是可以看到 Client项目的日志有在刷新 重新从Config项目重新拉去数据

Spring Config 配置中心和Spring Bus配合使用的一些坑_第4张图片


4.只会刷新被@RefreshScope修饰的地方

网络上的文章写那么多,我测试发现只有Bean有@RefreshScope注解的地方才会被刷新到,所谓的bus自动刷新配置是我理解错了还是本来就是这么有局限性?我有个大胆的想法 我把CLient项目的 server.port也放在git管理,但是发现他根本不起效果,只能说他是帮我们刷新的配置缓存文件 没有帮我们起到热更新的左右呀,我们还是要手动重启Client才能把服务端口改过来。

 

样例:

Spring Config 配置中心和Spring Bus配合使用的一些坑_第5张图片

Spring Config 配置中心和Spring Bus配合使用的一些坑_第6张图片

Spring Config 配置中心和Spring Bus配合使用的一些坑_第7张图片

1修改git

Spring Config 配置中心和Spring Bus配合使用的一些坑_第8张图片

2.actuator/bus-refresh

3.原本是8101的端口 修改成8102 但是结果:

Spring Config 配置中心和Spring Bus配合使用的一些坑_第9张图片

Spring Config 配置中心和Spring Bus配合使用的一些坑_第10张图片

总的来说 集成bus 感觉有点吭 没有我想象的那么强大 哈

你可能感兴趣的:(代码笔记,随笔)