日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > windows >内容正文

windows

JAVA 多用户商城系统b2b2c---配置中心和消息总线

發布時間:2024/4/17 windows 34 豆豆
生活随笔 收集整理的這篇文章主要介紹了 JAVA 多用户商城系统b2b2c---配置中心和消息总线 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

Spring Cloud Bus

電子商務平臺源碼請加企鵝求求:一零三八七七四六二六。 Spring cloud bus通過輕量消息代理連接各個分布的節點。這會用在廣播狀態的變化(例如配置變化)或者其他的消息指令。Spring bus的一個核心思想是通過分布式的啟動器對spring boot應用進行擴展,也可以用來建立一個多個應用之間的通信頻道。目前唯一實現的方式是用AMQP消息代理作為通道,同樣特性的設置(有些取決于通道的設置)在更多通道的文檔中。

Spring cloud bus被國內很多都翻譯為消息總線,也挺形象的。大家可以將它理解為管理和傳播所有分布式項目中的消息既可,其實本質是利用了MQ的廣播機制在分布式的系統中傳播消息,目前常用的有Kafka和RabbitMQ。Spring Cloud Bus做配置更新的步驟:

1、提交代碼觸發post給客戶端A發送bus/refresh

2、客戶端A接收到請求從Server端更新配置并且發送給Spring Cloud Bus

3、Spring Cloud bus接到消息并通知給其它客戶端

4、其它客戶端接收到通知,請求Server端獲取最新配置

5、全部客戶端均獲取到最新的配置

項目示例

客戶端spring-cloud-config-client改造

1、添加依賴

<dependency><groupId>org.springframework.cloud</groupId><artifactId>spring-cloud-starter-bus-amqp</artifactId> </dependency> 復制代碼

需要多引入spring-cloud-starter-bus-amqp包,增加對消息總線的支持

2、配置文件

## 刷新時,關閉安全驗證 management.security.enabled=false ## 開啟消息跟蹤 spring.cloud.bus.trace.enabled=truespring.rabbitmq.host=192.168.9.89 spring.rabbitmq.port=5672 spring.rabbitmq.username=admin spring.rabbitmq.password=123456 復制代碼

配置文件需要增加RebbitMq的相關配置,這樣客戶端代碼就改造完成了。

3、測試 依次啟動spring-cloud-eureka、spring-cloud-config-server、spring-cloud-config-client項目,在啟動spring-cloud-config-client項目的時候我們會發現啟動日志會輸出這樣的一條記錄。

2017-05-26 17:05:38.568 INFO 21924 --- [ main] o.s.b.a.e.mvc.EndpointHandlerMapping : Mapped "{[/bus/refresh],methods=[POST]}" onto public void org.springframework.cloud.bus.endpoint.RefreshBusEndpoint.refresh(java.lang.String) 復制代碼

說明客戶端已經具備了消息總線通知的能力了,為了更好的模擬消息總線的效果,我們更改客戶端spring-cloud-config-client項目的端口為8003、8004依次啟動,這樣測試環境就準備好了。 我們先分別測試一下服務端和客戶端是否正確運行,訪問:http://localhost:8001/neo-config/dev,返回信息:

{"name": "neo-config", "profiles": ["dev"], "label": null, "version": null, "state": null, "propertySources": [{"name": "https://github.com/ityouknow/spring-cloud-starter/config-repo/neo-config-dev.properties", "source": {"neo.hello": "hello im dev"}}] } 復制代碼

說明server端都正常讀取到了配置信息。

依次訪問:http://localhost:8002/hello、http://localhost:8003/hello、http://localhost:8004/hello,返回:hello im dev。說明客戶端都已經讀取到了server端的內容。

現在我們更新neo-config-dev.properties?中neo.hello的值為hello im dev update并提交到代碼庫中,訪問:http://localhost:8002/hello?依然返回hello im dev。我們對端口為8002的客戶端發送一個/bus/refresh的post請求。在win下使用下面命令來模擬webhook.

curl -X POST http://localhost:8002/bus/refresh

執行完成后,依次訪問:http://localhost:8002/hello、http://localhost:8003/hello、http://localhost:8004/hello,返回:hello im dev update。說明三個客戶端均已經拿到了最新配置文件的信息,這樣我們就實現了示例。

java B2B2C 多租戶電子商城系統

轉載于:https://juejin.im/post/5cb68ead51882532a1467b9f

總結

以上是生活随笔為你收集整理的JAVA 多用户商城系统b2b2c---配置中心和消息总线的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。