api閘道器是乙個系統的唯一入口。
是眾多分布式服務唯一的乙個出口。
它做到了物理隔離,內網服務只有通過閘道器才能暴露到外網被別人訪問。
簡而言之:閘道器就是你家的大門
身份認證(oauth2/jwt)
許可權安全(黑白名單/爬蟲控制)
流量控制(請求大小/速率)
資料轉換(公共請求request/response)
監控/metrics
跨域問題(前後端分離)
灰度發布(金絲雀發布/一部分去老客戶端/一部分去新客戶端)
openresty
kong
spring cloud zuul/gateway
zuul2
閘道器限流
鑑權監控
易用性可維護性
成熟度spring cloud gateway
可以通過ip,使用者,集群限流,提供了相應的介面進行擴充套件
普通鑑權、auth2.0
gateway metrics filter
簡單易用
spring系列可擴充套件強,易配置 可維護性好
spring社群成熟,但gateway資源較少
zuul2
可以通過配置檔案配置集群限流和單伺服器限流亦可通過filter實現限流擴充套件
filter中實現
filter中實現
參考資料較少
可維護性較差
開源不久,資料少
openresty
需要lua開發
需要lua開發
需要開發
簡單易用,但是需要進行的lua開發很多
可維護性較差,將來需要維護大量lua指令碼
很成熟資料很多
kong
根據秒,分,時,天,月,年,根據使用者進行限流。可在原碼的基礎上進行開發
普通鑑權,key auth鑑權,hmac,auth2.0
可上報datadog,記錄請求數量,請求資料量,應答資料量,接收於傳送的時間間隔,狀態碼數量,kong內執行時間
簡單易用,api**通過管理員介面配置,開發需要lua指令碼
"可維護性較差,將來需要維護大量lua庫
相對成熟,使用者問題彙總,社群,外掛程式開源
第乙個閘道器
pom.xml
org.springframework.cloud
spring-cloud-starter-gateway
public static void main(string args)
// 等同於在yml檔案中的配置
訪問url:
pom.xml新增
org.springframework.boot
spring-boot-starter-actuator
management:
endpoints:
web:
exposure:
include: "*"
**位置:
本文由部落格一文多發平台 openwrite 發布!
Kong Mashape 開源 API 閘道器介紹
kong 是乙個可擴充套件開源的 api 層工具 也可以叫api閘道器或者api中介軟體 kong 執行在任何 restful api 的前端,並且可以通過外掛程式方式擴充套件,這個外掛程式它提供了超越核心平台的額外的功能和服務的。具有以下特點 kong 構建在高可靠技術,比如nginx 和apac...
API閘道器的安全
跨站請求偽造 cross site request forgery 是一種挾制使用者在當前已登入的web程式上執行非本意的操作的攻擊方法,簡單來說就是你在瀏覽器開啟了兩個頁面,其中乙個頁面通過竊取另乙個頁面的cookie來傳送偽造請求 某一家銀行轉賬操作的url位址為 藏身於惡意 的某 片段 若賬戶...
API 閘道器(API Gateway)學習
我是做客戶端開發的,老是聽到服務端開發的同學提到閘道器,最近培訓課上一位老師又講到了閘道器,雖然不知道是什麼,但是聽他講的就是很好,非常方便,所以就來學習一下了。1.1.定義 api 閘道器是乙個處於應用程式或服務 提供 rest api 介面服務 之前的系統,用來管理授權 訪問控制和流量限制等,這...