spring|spring cloud config和bus组件实现自动刷新功能

1.启动RabbitMQ
2.修改config服务端 依赖:(boot和cloud版本不要太高,不然刷新配置的请求不能用)

org.springframework.cloudspring-cloud-starter-consul-discoveryorg.springframework.bootspring-boot-starter-actuatororg.springframework.cloudspring-cloud-config-serverorg.springframework.cloudspring-cloud-starter-bus-amqporg.springframework.bootspring-boot-starter-web

配置:
spring:cloud:consul:host: localhostport: 8500config:server:git:uri: https://gitee.com/xiang_pei/config.gitdefault-label: masterapplication:name: CONFIGSERVERrabbitmq:host: localhostport: 5672username: guestpassword: guestvirtual-host: /#暴露所有端点,便于发送更新配置请求management:endpoints:web:exposure:include: "*"

启动:(启动类加@EnableConfigServer)mq会有一条临时队列
spring|spring cloud config和bus组件实现自动刷新功能
文章图片

3.修改微服务(即客户端) 依赖:
org.springframework.bootspring-boot-starter-weborg.springframework.cloudspring-cloud-starter-consul-discoveryorg.springframework.bootspring-boot-starter-actuatororg.springframework.cloudspring-cloud-starter-configorg.springframework.cloudspring-cloud-starter-bootstraporg.springframework.cloudspring-cloud-starter-bus-amqp

配置:不变(rabbitmq的配置应该写到gitee上)bootstrap.properties
spring.cloud.consul.host=localhostspring.cloud.consul.port=8500spring.application.name=CONFIGCLIENTspring.cloud.config.discovery.service-id=CONFIGSERVERspring.cloud.config.discovery.enabled=truespring.cloud.config.name=configspring.cloud.config.label=masterspring.cloud.config.profile=dev

spring|spring cloud config和bus组件实现自动刷新功能
文章图片

运行:
写了一个测试方法
spring|spring cloud config和bus组件实现自动刷新功能
文章图片

name属性是gitee上的配置文件的name
spring|spring cloud config和bus组件实现自动刷新功能
文章图片

没问题
4.利用webhooks实现自动刷新配置
向config服务端发送post请求
http://localhost:8080/actuator/bus-refresh
具体路径根据项目来
在gitee的config管理中,点击webhooks
spring|spring cloud config和bus组件实现自动刷新功能
文章图片

url就填上面那个,因为需要公网才能测试,所以暂时不演示了。
设置完,改gitee的配置就会自动刷新了
【spring|spring cloud config和bus组件实现自动刷新功能】到此这篇关于spring cloud config和bus组件实现自动刷新功能的文章就介绍到这了,更多相关spring cloud config自动刷新内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

    推荐阅读