2024年2月24日 星期六

網關 gateway

namespace: 用於區分環境, 例如 開發環境, 測試環境, 生產環境

group: 用於區分項目, 例如xuecheng-plus項目, xuecheng2.0項目

關於網關的存在,是為了解決目前遇到的問題

解決綁定絕對路徑綁死同一機台問題


如上圖為絕對路徑,在微服務架構下, 可能一個服務有多台(多實例),他服務對接並不適合綁定某一機台,應讓不同的實例都能處理此請求才是
如上圖在中間增設網關,這樣在前端的代碼中只需要指定每個接口的相對路徑, 
在前端代碼的一個固定的地方在接口地址前統一加網關的地址,每個請求統一到網關,由網關將請求轉發到具體的微服務。

有了網關就可以對請求進行路由,路由到具體的微服務,減少外界對接微服務的成本,比如:400電話,路由的試可以根據請求路徑進行路由、根據host地址進行路由等, 當微服務有多個實例時可以通過負載均衡算法進行路由
同時,這個結構也解決前端需要寫死API-URL的問題, 由網關來解決對應URL問題即可



以spring cloud gateway結構 流程如下:
1、微服務啟動,將自己注冊到Nacos,Nacos記錄了各微服務實例的地址。
2、網關從Nacos讀取服務列表,包括服務名稱、服務地址等。
3、請求到達網關,網關將請求路由到具體的微服務。








沒有留言:

張貼留言

創業想法1

現在有駐點工作的公司 今天突然想到 那為什麼沒有遠端駐點公司 就是接國外的職位 幫他找台灣人 在公司上遠端工作的職缺 有可能是因為時差 所以這種公司上班時間不同, 並不好管理 但是感覺理論上是存在需求 就是台灣人想找遠端職缺, 但是可能語言上或技能上還差點火候 公司提供培訓, 並...