API gateway 之 kong 基本介紹 (一)

 

1、API網關概念介紹

API 網關,即API Gateway,是大型分佈式系統中,爲了保護內部服務而設計的一道屏障,能夠提供高性能、高可用的 API託管服務,從而幫助服務的開發者便捷地對外提供服務,而不用考慮安全控制、流量控制、審計日誌等問題,統一在網關層將安全認證,流量控制,審計日誌,黑白名單等實現。網關的下一層,是內部服務,內部服務只需開發和關注具體業務相關的實現。網關能夠提供API發佈、管理、維護等主要功能。開發者只須要簡單的配置操做便可把本身開發的服務發佈出去,同時置於網關的保護之下。html

 

(▲圖片版權來自網絡,版權歸做者全部。)java

 

API Gateway網關使得搭建一個新的應用服務變得簡單、快捷、高效,同時,開發者將精力更多放在和業務緊密相關的工做上。python

 

2、kong簡介

Kong是一款基於Nginx_Lua模塊寫的高可用,易擴展由Mashape公司開源的API Gateway項目。因爲Kong是基於Nginx的,因此能夠水平擴展多個Kong服務器,經過前置的負載均衡配置把請求均勻地分發到各個Server,來應對大批量的網絡請求。linux

 

Kong主要有三個組件:nginx

  • Kong Server :基於nginx的服務器,用來接收API請求。
  • Apache Cassandra/PostgreSQL :用來存儲操做數據。
  • Kong dashboard:官方推薦UI管理工具,固然,也能夠使用 restfull 方式 管理admin api。

Kong採用插件機制進行功能定製,插件集(能夠是0或n個)在API請求響應循環的生命週期中被執行。插件使用Lua編寫,目前已有幾個基礎功能HTTP基本認證、密鑰認證、CORS( Cross-origin Resource Sharing,跨域資源共享)、TCP、UDP、文件日誌、API請求限流、請求轉發以及nginx監控。git

Kong 官網:https://getkong.org/ 插件介紹,幫助文檔等。github

Kong 源碼:https://github.com/Mashape/kong docker

Kong UI管理工具:https://github.com/PGBI/kong-dashboard 瀏覽器UI管理工具django

Kong 桌面管理工具:https://github.com/ajaysreedhar/kongdash 有linux版本,windows版本,mac版本。windows

 

3、社區資源和工具

安裝KONG的方式

能夠選擇不一樣的方式進行安裝 ->重要

第三方管理維護工具 

資源

 

參考文獻

參考文章1:KONG API Gateway-用戶指南 https://github.com/cloudframeworks-apigateway/user-guide-apigateway#%E6%A1%86%E6%9E%B6%E8%AF%B4%E6%98%8E-%E4%B8%9A%E5%8A%A1

參考文章2:易觀API網關—Kong分享篇https://www.analysys.cn/media/technology/detail/20014914/

參考文章3: KongNginx支持的API管理解決方案https://sdk.cn/news/1596

 

轉自:https://blog.csdn.net/li396864285/article/details/77371385

相關文章
相關標籤/搜索