如何建設企業級API閘道器
企業級
API閘道器是現代軟體架構中不可或缺的重要組成部分,它能夠為整個系統提供安全可靠的入口,同時也是系統中不同業務模組之間互動的橋樑。API閘道器使得搭建一個新的應用服務變得簡單、快捷、高效,同時,開發人員可以將更多的精力放在和業務緊密相關的工作中。
企業級API閘道器主要作用包括如下幾點:
● 統一對外介面
當使用者需要整合不同產品或者服務之間的功能,呼叫不同服務提供的能力。利用API閘道器統一的介面組裝服務,統一協議、統一Url字首、統一響應基礎報文等。對於公司內部不同的服務,提供的介面可能在風格上存在一定的差異,透過API閘道器可以統一這種差異,當內部服務修改時,可以透過API閘道器進行適配,不需要呼叫方進行調整。
● 增加系統安全性
API閘道器可對外部和內部閘道器進行了隔離,把開發環境、測試環境、生產環境等都隔離,減少對外暴露服務可以增加系統安全性,保障了後臺服務的安全性。也需要增加安全外掛,為API的安全保駕護航。如IP黑白名單限制不知名的訪問,對請求報文進行敏感字元的告警,出入參加解密等。
● 統一鑑權
透過API閘道器對訪問進行統一鑑權,不需要每個應用單獨對呼叫方進行鑑權,應用可以專注業務。如內建JWT認證、OAuth2認證、AppKey認證、AK/SK認證、呼叫許可權審批等,並支援自定義外掛的認證,透過簡單的程式碼或配置即可支援。
● API註冊與授權
可授權呼叫方可使用與不可使用的服務。
● 服務限流
透過API閘道器可以對呼叫方呼叫每個介面的每秒併發限制、呼叫次數限制、最大連線數限制、呼叫時間段限制等控制。
● 提升預釋出能力
API閘道器應該支援服務熔斷,灰度釋出,線上測試等,為API釋出提供基礎服務。
● 閘道器監控
透過API閘道器的加快中心可提供一系列不同維度的API呼叫統計、介面預警、介面呼叫日誌等。並支援鏈路追蹤,透過請求Id,追蹤呼叫流程,以及呼叫時間、報文、異常情況等。
企業級API閘道器需要考慮的因素
● API全生命週期的管理
API服務的全生命週期,包括服務的設計、開發、測試、上線釋出;服務使用的申請、開通;服務使用情況的監控等等。
● 安全性問題
企業在把服務暴露給外部使用時,首先要確保服務使用的安全,防止外部的惡意訪問對公司業務的影響。為確保安全,需要考慮在通訊鏈路的建立、傳輸資料的加密、資料的完整性等方面。
● 效能問題
作為企業API的入口,所有的請求都會經過API閘道器進行轉發,可想而知,對API閘道器的訪問壓力是巨大的。需要考慮閘道器的轉發效能、快取、負載均衡等是否都滿足。
● 高可用問題
API閘道器作為邏輯上的單點,一旦發生問題,將造成企業服務的不可用,對企業來說可能造成的致命的影響。需要保證API閘道器支援7*24小時的穩定執行,閘道器的自動伸縮、API的熱更新等問題,都是企業級的閘道器需要考慮的。
● 擴充套件性問題
企業API閘道器提供了一個基礎平臺,使用場景會隨著企業業務規模等的變化進行不斷的強化與調整。這就需要閘道器層提供這樣一種外掛機制,使得可以靈活地進行這些調整和變化,而不用頻繁對閘道器層進行改動,確保閘道器層的有很好的擴充性。
● API高效運維的問題
API在上線、釋出過程中,都需要涉及到閘道器層的配合,例如,需要閘道器層知道API釋出的地址,API的介面形式、報文格式,也需要閘道器層對後臺API進行配置、封裝。在API調整後,需要做出相應的修改,支援統一發布、灰度釋出等。
一個企業可能會暴露成百上千個API,日常也會經常進行API的釋出、升級、改造、下架等操作。對不同的服務,不同的訪問者,需要提供不同的服務訪問策略。所以,與API閘道器配套的,需要一套完善的自助系統,提供給服務的提供者、管理者、使用者,來對服務的釋出、使用和運營。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/70005218/viewspace-2992236/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- API閘道器,企業級閘道器可擴充套件API套件
- AI閘道器對企業的意義及如何構建 AI 閘道器AI
- 如何架構一個合適的企業API閘道器架構API
- 企業API閘道器適用業務場景API
- RestCloud企業級API閘道器,可與原有微服務框架無縫整合RESTCloudAPI微服務框架
- 開放API閘道器實踐(一) ——設計一個API閘道器API
- 高效能API閘道器(1)、微服務API閘道器架構設計API微服務架構
- 探索使用Nginx +Lua 構建 API 閘道器NginxAPI
- API 閘道器 KongAPI
- 分享一個國內首款開源企業級go語言API閘道器--GoKu API GatewayGoAPIGateway
- 企業級API閘道器,承擔資料傳輸及多協議轉換工作API協議
- 使用API閘道器構建移動端友好的API服務API
- 如果讓我設計一套,TPS百萬級API閘道器!API
- API 閘道器策略二三事API
- 微服務設計中的API閘道器模式微服務API模式
- 億級流量架構之閘道器設計思路、常見閘道器對比架構
- 企業級API資產如何管理API
- APISIX 如何與 Hydra 整合,搭建集中認證閘道器助力企業安全API
- RestCloud API閘道器,輕量級ESB服務匯流排RESTCloudAPI
- 工業智慧閘道器如何實現雙WAN口設定
- 預設閘道器怎麼設定,預設閘道器是什麼
- API閘道器:第8層網路API
- Ocelot API閘道器的實現剖析API
- Spring Boot整合Zuul API閘道器Spring BootZuulAPI
- 開啟API閘道器設計的一扇窗API
- win10系統如何設定預設閘道器_win10預設閘道器設定步驟Win10
- Linux 中如何查詢預設閘道器Linux
- 馬斯克都不懂的 GraphQL,API 閘道器又能對其如何理解?馬斯克API
- 構建SpringCloud閘道器服務SpringGCCloud
- 微服務基礎——厲害了!API閘道器微服務API
- 開放API閘道器實踐(三) —— 限流API
- 拆輪子:閘道器GOKU-API-GatewayGoAPIGateway
- 高效能API閘道器Kong介紹API
- 八步部署NGINX Plus API閘道器NginxAPI
- 為什麼微服務需要API閘道器?微服務API
- 微服務實踐分享(2)api閘道器微服務API
- 騰訊雲 API 閘道器產品釋出API
- 工業物聯網閘道器的功能是什麼(資料採集閘道器如何選擇)