1. 程式人生 > >微服務api閘道器使用Zuul構建API Gateway

微服務api閘道器使用Zuul構建API Gateway

對於 API Gateway,常見的選型有基於 Openresty 的 Kong、基於 Go 的 Tyk 和基於 Java 的 Zuul。

什麼是Zuul?

Zuul是裝置和網站到Netflix流媒體應用程式後端所有請求的前門。作為邊緣服務應用程式,Zuul的目的是實現動態路由,監控,彈性和安全性。它還能夠根據需要將請求路由到多個Amazon Auto Scaling組。

我們為什麼要建造Zuul?

Netflix API流量的數量和多樣性有時會導致生產問題迅速出現,並且沒有任何警告。我們需要一個能讓我們快速改變行為的系統,以便對這些情況作出反應。

Zuul使用一系列不同型別的過濾器,使我們能夠快速,靈活地將功能應用於我們的邊緣服務。

這些過濾器可幫助我們執行以下功能:

  • 身份驗證和安全性 - 識別每個資源的身份驗證要求並拒絕不符合要求的請求。

  • 洞察和監測 - 在邊緣跟蹤有意義的資料和統計資料,以便為我們提供準確的生產檢視。

  • 動態路由 - 根據需要動態路由請求到不同的後端群集。

  • 壓力測試 - 逐漸增加群集流量以衡量效能。

  • 載入Shedding - 為每種型別的請求分配容量並刪除超出限制的請求。

  • 靜態響應處理 - 直接在邊緣建立一些響應,而不是將它們轉發到內部群集

  • 多區域彈性 - 跨AWS區域的路由請求,以便擴大我們的ELB使用範圍,並使我們的邊緣更接近我們的會員

欲瞭解更多詳情:我們如何在Netflix使用Zuul