您当前的位置: 首页 >  spring

java持续实践

暂无认证

  • 2浏览

    0关注

    746博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文

黑马十次方项目day08-11 消息总线组件SpringCloudBus

java持续实践 发布时间:2019-02-24 10:06:08 ,浏览量:2

文章目录
      • 一.SpringCloudBus简介
      • 二. SpringCloudBus 代码的实现
        • 2.1 配置服务端
        • 2.2 配置客户端

一.SpringCloudBus简介

如果我们更新码云中的配置文件,那客户端工程是否可以及时接受新的配置信息 呢?我们现在来做有一个测试,修改一下码云中的配置文件中mysql的地址 ,然后测试 http://localhost:9001/label (查询所有标签的接口)数据是否依然可以查询出来,证明修改服务器中的配置并没有更新立刻到工程,只有重新启动程序才会读取配置。

那我们如果想在不重启微服务的情况下更新配置如何来实现呢? 我们使用SpringCloudBus来实现配置的自动更新.

其主要的流程如下图, 如果修改了git服务器上的配置文件, 那么就手动向mq发送一个消息,发送信息的方式为发送该post请求http://127.0.0.1:12000/actuator/bus-refresh ,其中的ip和端口为config配置中心的ip与端口. 那么业务的微服务就监听到了配置文件的改动, 就去重新编译代码即可.

二. SpringCloudBus 代码的实现 2.1 配置服务端

修改tensquare_config工程的pom.xml,引用依赖

   
        
            org.springframework.cloud
            spring-cloud-bus
        
        
            org.springframework.cloud
            spring-cloud-stream-binder-rabbit
        

修改tensquare_config工程的application.yml ,添加配置

spring: 
  rabbitmq:
    host: 192.168.184.135
management: #暴露触发消息总线的地址
  endpoints:
    web:
      exposure:
        include: bus-refresh  #使用bus必须要加的bus
2.2 配置客户端

以基础模块为例,加入消息总线. 修改tensquare_base工程 ,引入依赖


        
            org.springframework.cloud
            spring-cloud-bus
        
        
            org.springframework.cloud
            spring-cloud-stream-binder-rabbit
        
        
        
            org.springframework.boot
            spring-boot-starter-actuator
        

在码云的配置文件中配置rabbitMQ的地址

rabbitmq:
	host: 192.168.184.135

启动依次tensquare_config,tensquare_eureka 、和tensquare_base 发送如下的get请求.查询所有的标签 http://localhost:9001/label 查询的结果如下: 接着在码云的base-dev.yml上,修改该配置文件,把mysql的数据库地址改为127.0.0.1 如下图所示 在本地mysql上, 创建一个tensquare_base数据库,在tb_label表中插入一条数据,标签名为 本地. 在postman中发送一个如下的post请求,手动向mq发送消息,说明配置文件改动了 http://127.0.0.1:12000/actuator/bus-refresh 该请求响应数据为空. 得到响应后,再次发送查询所有标签的请求. http://localhost:9001/label,得到的响应数据如下图,代表成功监听到了配置文件的改动, 说明不需要重启服务器,就能更新配置文件! 这将极大的简便运维的操作.

关注
打赏
1658054974
查看更多评论
立即登录/注册

微信扫码登录

0.0449s