【編者的話】本文主要講述了mashape的首席技術執行官palladino對api閘道器的詳細介紹,以及api閘道器在微服務中所起的作用,同時介紹了mashape的一款開源api閘道器kong。
本文講的是微服務架構中api閘道器的角色api閘道器提供商
mashape
的首席技術執行官
marco palladino
**,儘管它們在命名方面存在差異,但新出現的
服務網格
並不完全不同於
api閘道器
,兩者之間的相似性會隨著時間的推移而不斷增長。
palladino指出,實際上這兩種技術提供的功能很相似。api閘道器,比如
amazon web services
的api閘道器或mashape的開源api閘道器
kong
,在過去的十多年來主要用於對映外部流量到內部資源,而最近開發的服務網格——比如
lyft』s envoy
或uber』s catylist
——主要是在
微服務架構
中**內部資源。
「當你想到閘道器的時候,你通常會想到乙個集中的層,乙個額外的跳在網路上處理附加的功能。但這並不一定是真的,」在上週洛杉磯舉行的
2023年mesoscon
上palladino發表
演講時這麼說。閘道器還可以提供一種有效的方式來處理跨微服務之間的通訊。他說:「你也可以在現有的微服務上執行kong,擺脫額外的跳躍,減少延遲。」
在過去的10年裡,api一直是一種受歡迎的通訊互動方式,docker使其易於設定微服務架構,其中應用程式和服務是由較小的可交換元件組成的。但這些元件之間需要一種方式進行發現與呼叫。這就是api閘道器的作用。
api閘道器「可以成為乙個抽象層,它位於這些微服務中每個請求的訪問路徑上,」palladino說道。
閘道器鞏固了通往系統常用功能的所有路徑,比如身份驗證或者服務發現,通過外掛程式都能被閘道器識別。「外掛程式是一種有效的中介軟體功能可以動態應用於所有的微服務上,」他講到。
api閘道器可以聚合服務請求和這些特性。客戶端可以做出乙個響應,閘道器可以將其分解為多個請求,節省了客戶端自身呼叫的頻寬。閘道器同樣還可以跟蹤這些請求。
立足整體式應用實現微服務,就如同強求活雞取卵一般,幾乎不具可行性。——@thefosk
#mesoscon
——the new stack(@thenewstack)
2023年9月14號
當乙個組織開始把乙個單體應用拆分為微服務時,閘道器可以將對客戶端的影響最小化。「閘道器就像裝載單體應用前的乙個窗簾。客戶端只會處理閘道器,而你可以在窗簾後面解耦你的單體應用,不必擔心更新你的客戶端,」他說道。
他說:「當你沒掌控你的客戶端的時候這個特別有用」。
傳統上,api閘道器在組織網路的邊緣上被使用,處理的流量大部分來自於單體應用和外部客戶端之間的互動。然而微服務架構將大部分的流量轉移到內部網路,因為不同的微服務之間要進行互動。「你可以有外部的客戶端使用案例,但這成為了當前消費微服務的眾多客戶端之一。」
構建在nginx
這高效能的伺服器上,mashape的kong是使用最廣泛的開源api閘道器,乙個月超過20w執行例項,palladino講到。使用kong,nginx被擴充套件到中介軟體上,可以通過json restful呼叫進行動態配置。
原文發布時間為:
2017-10-12
kl2422
微服務架構中api閘道器的角色
微服務架構之 API閘道器
在微服務架構的系列文章中,前面已經通過文章 架構設計之 服務註冊 介紹過了服務註冊的原理和應用,今天這篇文章我們來聊一聊 api閘道器 api閘道器 是任何微服務架構的重要組成部分。有了它我們可以在乙個獨立的模組上方便的處理一些非業務邏輯,可以讓微服務本身專注在自身特定的功能上,使得每個微服務的開發...
微服務API閘道器
微服務api閘道器 api閘道器是乙個伺服器,是系統的唯一入口。從物件導向設計的角度看,它與外觀模式類似。api閘道器封裝了系統內部架構,為每個客戶端提供乙個定製的api。它可能還具有其它職責,如身份驗證 監控 負載均衡 快取 請求分片與管理 靜態響應處理。api閘道器方式的核心要點是,所有的客戶端...
微服務 API閘道器 限流
我們在api閘道器中已經介紹了,限流是保護閘道器的手段之一,和身份認證以及鑑權一起組成安全防禦大閘。其目的是對併發請求進行限速或限制乙個時間視窗內請求的數量,一旦達到閾值就排隊等待或降級甚至拒絕服務。根據上面列出的原因,我們自然知道限流該怎麼限制法,但是具體要怎麼實現呢?也就是該怎麼設計演算法來實現...