【API網關Kong系列一】-簡介

一、簡介

Kong 是一個企業級服務網關,底層是使用lua語言,整合Nginx 實現了強大的服務轉發,路由,驗證功能,segmentfault

1.2 官方描述

Kong was originally built at Mashape to secure, manage and extend over 15,000 APIs & Microservices for its API Marketplace, which generates billions of requests per month for over 200,000 developers. Today Kong is used in mission critical deployments at small and large organizations.

Kong是一個Mashape開源的高性能高可用的API網關和API服務管理層,基於OpenResty,進行API管理,並提供了插件實現了API的AOP功能。 安全

Kong在Mashape管理了15000+個API。爲20+萬開發者提供每個月數十億的請求支持。 服務器

Kong是基於OPenRestry,而OpenRestry又是對Nginx的二次封裝,因此不少配置項和Nginx相似。網絡

1.2 特色

可擴展性: Kong經過簡單的增長機器節點,能夠很容易的水平擴展。 架構

模塊化:Kong經過插件的方式擴展,插件能夠很容易經過一個RESTful管理API來配置。 負載均衡

能夠運行在任何基礎架構:Kong 能夠到處運行,包括雲、本地環境或者混合環境、單個或者多個數據中心等less

1.3 技術架構

連接描述
從技術架構圖能夠看出、kong 是一款流量網關開源的產品模塊化

1.4 工做流程

Kong 是在客戶端和(微)服務間轉發API通訊的PAI網關、經過插件能夠擴展功能。
圖片描述性能

一旦kon運行起來、每一個客戶端對API的請求將先到達Kong 、而後被代理到最終的API上。ui

在請求和響應之間,Kong將執行任何安裝的插件,擴展API 的功能集。其有效的成爲每一個API 的請求入口。

1.5 主要組件介紹

Kong server: 基於Nginx服務器,用來接受API請求的。
Apache Cassandra & PostgreSQL : 用來存儲操做數據的。

能夠經過增長Kong Server 機器來對Kong服務進行水平擴展,經過前置的負載均衡器向這些服務器分發請求,根據官方文檔描述,兩個存儲節點(Cassandra)就足以支撐絕大多數狀況,但若是網絡很是擁擠,能夠考慮適當的增長更多的節點。

對於開源社區來講,Kong 最吸引人的地方在於能夠經過插件擴展已有的功能,這些插件在API請求響應循環的生命週期中被執行。

總結: Kong 就是一個針對Nginx管理系統,並提供了不少關於API網關功能的Nginx擴展

1.6 插件介紹

Kong 插件使用 Lua 腳本編寫。

在官方文檔中,咱們能夠獲取所有插件,其中部分插件是須要收費的只有企業版纔可使用。
圖片描述

要玩轉Kong, 關鍵在於它提供的插件。有免費、有收費、還有社區提供的,而且支持自定義。現階段提供有8類插件

  1. 身份驗證
  2. 權限安全
  3. 流量控制
  4. Serverless
  5. 分析與監控
  6. 數據轉換
  7. 日誌信息
  8. 部署發佈

二、 總結

經過上述簡單介紹相信你們對kong有一個基本的瞭解,kong 就是 Mashape 開源的高性能,高可用的PAI網關,基於openRestry二次開發的,支持可插拔的插件方式進行擴展,提供了平常使用的8大類插件等特性。

想了解更多關於Kong網關的請移步 >>>>> 企業級API網關Kong
相關文章
相關標籤/搜索