1. 程式人生 > 程式設計 >SpringCloud訊息匯流排Bus配置中心實現過程解析

SpringCloud訊息匯流排Bus配置中心實現過程解析

介紹和使用場景

1)什麼是訊息

一個事件,需要廣播或者單獨傳遞給某個介面

2)為什麼使用這個

配置更新了,但是其他系統不知道是否更新

SpringCloud配置中心可參考:

https://www.jb51.net/article/182888.htm

1.安裝RabbitMQ

下載地址:

http://erlang.org/download/

Erlang版本:Erlang OTP 21:10.0.1

下載地址:

https://www.rabbitmq.com/install-windows.html

RabbitMQ版本:Rabbitmq: 3.7.15

2.訪問地址

http://127.0.0.1:15672/

使用者名稱:guest

密碼:guest

3.新增依賴

例如:

商品服務新增下面依賴,配置中心服務不用加

<!-- 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.新增專案中的bootstrap..yml配置

spring:
 #新增RabbitMQ配置
 rabbitmq:
 host: localhost
 port: 5672
 username: guest
 password: guest

#暴露全部的監控資訊
management:
 endpoints:
 web:
  exposure:
  include: "*"

6.啟動專案後,修改git中的yml配置env,再用Postman呼叫下面介面

步驟:

修改git的application.yml配置

1)修改埠號為:8771,啟動專案

)修改埠號為:8772,啟動專案

修改env為:test1234

注意:

使用SpringCloud配置中心後,在idea中修改配置-Dserver.port=8772啟動專案是不生效的

SpringCloud訊息匯流排Bus配置中心實現過程解析

7.訪問介面,檢視返回的env是否改變,evn值均變為test123456

http://127.0.0.1:8771/api/v1/product/find?id=1

http://127.0.0.1:8772/api/v1/product/find?id=1

建議:

動態重新整理配置,在開發和測試環境使用,儘量少在生產環境使用

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支援我們。