7

1、简介

Kong 是一个企业级服务网关,底层是使用lua语言,整合Nginx 实现了强大的服务转发,路由,验证功能,

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 可以处处运行,包括云、本地环境或者混合环境、单个或者多个数据中心等

1.3 技术架构

链接描述
从技术架构图可以看出、kong 是一款流量网关开源的产品

1.4 工作流程

Kong 是在客户端和(微)服务间转发API通信的PAI网关、通过插件可以扩展功能。
图片描述

一旦kon运行起来、每个客户端对API的请求将先到达Kong 、然后被代理到最终的API上。

在请求和响应之间,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. 部署发布

2、 总结

通过上述简单介绍相信大家对kong有一个基本的了解,kong 就是 Mashape 开源的高性能,高可用的PAI网关,基于openRestry二次开发的,支持可插拔的插件方式进行扩展,提供了日常使用的8大类插件等特性。

想了解更多关于Kong网关的请移步 >>>>> 企业级API网关Kong

阅历笔记
279 声望37 粉丝

喷泉之所以漂亮是因为她有了压力;