分佈式03-Spring Cloud Cofig 客戶端主動刷新 三

Spring Cloud Cofig 1,2git

http://www.javashuo.com/article/p-wvxkasuv-kv.htmlweb

http://www.javashuo.com/article/p-zwncwhcr-kx.htmlspring

1.客戶端gradle引入包app

compile 'org.springframework.boot:spring-boot-starter-actuator'
compile 'org.springframework.cloud:spring-cloud-starter-bus-amqp'

2.客戶端 application.properties spring-boot

management.endpoints.web.exposure.include=* #actuator容許訪問的連接 
#rabbitmq配置=================單機刷新能夠不用配置
spring.rabbitmq.host=xxx.xxxx.xxx.xx
spring.rabbitmq.port=5672
spring.rabbitmq.prod.port=5674
spring.rabbitmq.username=xxx
spring.rabbitmq.password=xxxx
spring.rabbitmq.virtual-host=/
spring.rabbitmq.publisher-confirms=true測試

3.添加Controllergradle

再類註解@RefreshScopespa

添加方法打印配置文件中的tmp.file.path.net

咱們當前git庫的文件值是C:/home/test1/blog

啓動客戶端,能夠啓動多個咱們此次用2個客戶端作爲測試,端口分別是12000,12001

發佈請求 http://localhost:12000/public/tmpPathhttp://localhost:12001/public/tmpPath

能夠發現返回的都是 C:/home/test1/

4.修改數據

修改數據C:/home/test/而且提交git庫

請求 http://localhost:12000/actuator/refresh  進行單機刷新,接口返回發生變更的參數

訪問 http://localhost:12000/public/tmpPath   發現 C:/home/test1/ 已經變成 C:/home/test/

訪問 http://localhost:12001/public/tmpPath   發現依舊仍是 C:/home/test1/

若是是集羣的狀況些修改了參數要一個個去刷新有可能漏刷也增長了工做量。

這時咱們使用 Spring Cloud bus 幫助咱們同一刷新就很方便了。請求 http://localhost:12000/actuator/bus-refresh

這時候咱們看 http://localhost:12001/public/tmpPath ,發現 C:/home/test1/ 也已經變成 C:/home/test/

這樣就能經過刷新一臺客戶端從而刷新所有 客戶端了。

相關文章
相關標籤/搜索