天天看点

Kong —— Mashape 开源 API 网关

kong 是在客户端和(微)服务间转发api通信的api网关,通过插件扩展功能。kong 有两个主要组件:

kong server :基于 nginx 的服务器,用来接收 api 请求。

apache cassandra :用来存储操作数据。

你可以通过增加更多 kong server 机器对 kong 服务进行水平扩展,通过前置的负载均衡器向这些机器分发请求。根据文档描述,两个cassandra节点就足以支撑绝大多数情况,但如果网络非常拥挤,可以考虑适当增加更多节点。

对于开源社区来说,kong 中最诱人的一个特性是可以通过插件扩展已有功能,这些插件在 api 请求响应循环的生命周期中被执行。插件使用 lua 编写,而且 kong 还有如下几个基础功能:http 基本认证、密钥认证、cors( cross-origin resource sharing,跨域资源共享)、tcp、udp、文件日志、api 请求限流、请求转发以及 nginx 监控。

kong包可运行在某些 linux 发行版、mac os x 和 docker 中,无论是本地机还是云端服务器皆可运行。

除了免费的开源版本,mashape 还提供了付费的企业版,其中包括技术支持、使用培训服务以及 api 分析插件。

Kong —— Mashape 开源 API 网关