簡介
Ocelot是一個用.NET Core實作并且開源的API網關,它功能強大,包括了:路由、請求聚合、服務發現、認證、鑒權、限流熔斷、并内置了負載均衡器與Service Fabric、Butterfly Tracing內建。這些功能隻都隻需要簡單的配置即可完成。
架構圖
Ocelot的目标是使用.NET運作面向微服務/服務的架構,能有統一的入口點進入他們的系統。
特别是它很容易就可以內建IdentityServer和 bearer tokens。
Ocelot是一組按特定順序排列的中間件。
Ocelot将HttpRequest對象操作到其配置指定的狀态,直到它到達請求建構器中間件,在該中間件中,它建立一個HttpRequestMessage對象,該對象用于向下遊服務送出請求。送出請求的中間件是Ocelot管道中的最後一件事。它不會調用下一個中間件。來自下遊服務的響應存儲在每個請求範圍的存儲庫中,并在請求傳回Ocelot管道時進行檢索。有一個中間件将HttpResponseMessage映射到HttpResponse對象并傳回給用戶端。基本上它具有許多其他功能。
以下是部署Ocelot時使用的配置。