2024年2月24日 星期六

網關 gateway

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

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


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

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



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








2024年2月8日 星期四

LeetCode策略

目前順序:

數組-> 鏈表-> 哈希表->字符串->棧與隊列->樹->回溯->貪心->動態規劃->圖論->高級數據結構

參考: https://github.com/youngyangyang04/leetcode-master/blob/master/README.md


規劃: 

1 刷1題

2 隔天再刷同一題, 並寫當題的bigO, 將答案和思路貼到專案中

3 完成第二種解法

4 重寫第二種解法, 寫第二種bigO, 並將答案和思路貼到專案中, 並在excel表紀錄

excel表紀錄參考: https://www.youtube.com/watch?v=NdWYxz3izH4&t=5s


每周寫篇日誌做些調整

[leetcode] [KMP] KMP

ABCDABD... ABCDABF... 簡單的說, 傳統解兩字串匹配部分 可能會來個雙迴圈, 哀個比對, 當不匹配的時候, 會將下方列再後移1位 然後不匹配再後移 然而 如果像上放已經有4個屬於匹配的字串, 她就應該直接往後移四位來匹配, 而不是只移動1位 隱藏的思維是, 當...