原文鏈接:https://blog.csdn.net/yangding_/article/details/63253164
API網關使用場景
API網關技術選型與應用架構
API網關使用場景
在使用微服務架構場景下,客戶端在調用后台微服務時,都需要進行登陸認證、權限認證、流量控制、負載均衡、健康檢查等操作,這些操作是調用每一個微服務都必須。因此需要將該操作交給一個高性能的中間層進行處理,以降低系統間的耦合,並使微服務更加專注於業務邏輯處理,降低整體系統的響應時間。
如圖,來自各種終端的請求經過一層負載均衡后到達網關,網關統一做登陸認證、權限認證、流量控制、負載均衡、健康檢查等操作后,再將請求轉發到后台微服務。
API網關技術選型與應用架構
API網關作為后台微服務請求的入口,必然要求其具有高性能的特點,為了使其可以按照自己的使用場景定制開發,對其易擴展性也要求很高,並且最好是有成熟的產品與規范的文檔以及活躍的社區支持。OpenResty自然成為了首選!OpenResty是一款基於Ngnix的利用lua語言作為擴展的API網關技術。
上圖為利用Openresty作為API網關的一種微服務架構圖。如圖所示:
Openresty啟動時會先去redis集群中獲取最新的服務地址與配置信息,並且進行消息訂閱(即對某一端口進行監聽);
后台微服務都會在ZK中進行注冊,Gateway微服務會對ZK內的信息進行處理后存入redis集群中,並實時監聽ZK的地址變動情況,redis集群中有了服務的地址就可以將地址推送給Openresty做負載均衡;
OS web平台提供一個web界面用於方便的進行流量控制與權限控制的設置;
————————————————
版權聲明:本文為CSDN博主「Devin__Yang」的原創文章,遵循 CC 4.0 BY-SA 版權協議,轉載請附上原文出處鏈接及本聲明。
原文鏈接:https://blog.csdn.net/yangding_/article/details/63253164