SpringCloud消息總線Bus配置中心實(shí)現(xiàn)過程解析
介紹和使用場景
1)什么是消息
一個(gè)事件,需要廣播或者單獨(dú)傳遞給某個(gè)接口
2)為什么使用這個(gè)
配置更新了,但是其他系統(tǒng)不知道是否更新
SpringCloud配置中心可參考:
http://www.dhdzp.com/article/182888.htm
1.安裝RabbitMQ
下載地址:
Erlang版本:Erlang OTP 21:10.0.1
下載地址:
https://www.rabbitmq.com/install-windows.html
RabbitMQ版本:Rabbitmq: 3.7.15
2.訪問地址
用戶名:guest
密碼:guest
3.添加依賴
例如:
商品服務(wù)添加下面依賴,配置中心服務(wù)不用加
<!-- bus,rabbitmq --> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-actuator</artifactId> </dependency> <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-starter-bus-amqp</artifactId> </dependency>
4.修改Controller
添加@RefreshScope注解
@RestController
@RequestMapping("/api/v1/product")
@RefreshScope
public class ProductController {
@Value("${server.port}")
private String port;
//這是自己加的配置
@Value("${env}")
private String env;
@RequestMapping("/list")
public Object getAllList() {
String msg = "data from port: " + port + ",env: " + env);
return ;
}
}
5.添加項(xiàng)目中的bootstrap..yml配置
spring: #添加RabbitMQ配置 rabbitmq: host: localhost port: 5672 username: guest password: guest #暴露全部的監(jiān)控信息 management: endpoints: web: exposure: include: "*"
6.啟動項(xiàng)目后,修改git中的yml配置env,再用Postman調(diào)用下面接口
步驟:
修改git的application.yml配置
1)修改端口號為:8771,啟動項(xiàng)目
)修改端口號為:8772,啟動項(xiàng)目
修改env為:test1234
注意:
使用SpringCloud配置中心后,在idea中修改配置-Dserver.port=8772啟動項(xiàng)目是不生效的

7.訪問接口,查看返回的env是否改變,evn值均變?yōu)閠est123456
http://127.0.0.1:8771/api/v1/product/find?id=1
http://127.0.0.1:8772/api/v1/product/find?id=1
建議:
動態(tài)刷新配置,在開發(fā)和測試環(huán)境使用,盡量少在生產(chǎn)環(huán)境使用
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
java微信公眾號開發(fā)第一步 公眾號接入和access_token管理
這篇文章主要為大家介紹了java微信公眾號開發(fā),主要內(nèi)容包括公眾號接入和access_token管理,感興趣的小伙伴們可以參考一下2016-01-01
Spring?Cache+Redis緩存數(shù)據(jù)的實(shí)現(xiàn)示例
本文主要介紹了Spring?Cache+Redis緩存數(shù)據(jù),文中通過示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2022-01-01
Maven中<distributionManagement>的使用及說明
本文主要介紹了Maven中的SNAPSHOT和RELEASE倉庫的區(qū)別,以及如何在POM文件中配置和使用快照版本,快照版本可以實(shí)現(xiàn)實(shí)時(shí)更新,方便開發(fā)過程中的依賴管理,同時(shí),本文還總結(jié)了Maven的一些常用命令及其作用2025-01-01
Spring Boot 中的 @EnableDiscoveryClient 注解
@EnableDiscoveryClient 注解是 Spring Boot 應(yīng)用程序注冊到服務(wù)注冊中心的關(guān)鍵注解,這篇文章主要介紹了Spring Boot 中的 @EnableDiscoveryClient 注解,需要的朋友可以參考下2023-07-07
[Java]詳解Socket和ServerSocket學(xué)習(xí)筆記
即時(shí)類應(yīng)用或者即時(shí)類的游戲,HTTP協(xié)議很多時(shí)候無法滿足于我們的需求,這會,Socket對于我們來說就非常實(shí)用了。本篇文章主要介紹了Socket和ServerSocket,有興趣的可以了解一下。2016-12-12
ElasticSearch學(xué)習(xí)之ES Mapping實(shí)戰(zhàn)示例
這篇文章主要為大家介紹了ElasticSearch學(xué)習(xí)之ES Mapping實(shí)戰(zhàn)示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-01-01
Java應(yīng)用啟動停止重啟Shell腳本模板server.sh
這篇文章主要為大家介紹了Java應(yīng)用啟動、停止、重啟Shell腳本模板server.sh,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-08-08

