springcloud_getaway

1、什麼是路由網關

網關是系統的唯一對外的入口,介於客戶端和服務器端之間的中間層,處理非業務功能 提供路由請求、鑑權、監控、緩存、限流等功能。它將"1對N"問題轉換成了"1對1”問題。

通過服務路由的功能,可以在對外提供服務時,只暴露 網關中配置的調用地址,而調用方就不需要了解後端具體的微服務主機。

  2、爲什麼要使用微服務網關

   不同的微服務一般會有不同的網絡地址,而客戶端可能需要調用多個服務接口才能完成一個業務需求,若讓客戶端直接與各個微服務通信,會有以下問題:

(1)客戶端會多次請求不同微服務,增加了客戶端複雜性

(2)存在跨域請求,處理相對複雜

(3)認證複雜,每個服務都需要獨立認證

(4)難以重構,多個服務可能將會合併成一個或拆分成多個

 

服務網關基本功能

智能路由:接收外部一切請求,並轉發到後端的對外服務open-service上去;

     注意:我們只轉發外部請求,服務之間的請求不走網關,這就表示全鏈路追蹤、內部服務API監控、內部服務之間調用的容錯、智能路由不能在網關完成;

              當然,也可以將所有的服務調用都走網關,那麼幾乎所有的功能都可以集成到網關中,但是這樣的話,網關的壓力會很大,不堪重負。

權限校驗:可在微服務網關上進行認證,然後在將請求轉發給微服務,無須每個微服務都進行認證,不校驗服務內部的請求。服務內部的請求有必要校驗嗎?

 API監控:只監控經過網關的請求,以及網關本身的一些性能指標(例如,gc等);

     限流:與監控配合,進行限流操作;

API日誌統一收集:類似於一個aspect切面,記錄接口的進入和出去時的相關日誌。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章