为你介绍微服务网关 Kong

Nginx、Openresty和Kong三者紧密相连:

  • Nginx = Http Server + Reversed Proxy + Load Balancer
  • Openresty = Nginx + Lua-nginx-module,Openresty是寄生在 Nginx 上,暴露 Nginx 处理的各个阶段的钩子, 使用 Lua 扩展 Nginx
  • Kong = Openresty + Customized Framework,Kong作为 OpenResty 的一个应用程序

在使用Kong之前,最好新了解一下 OpenResty和Nginx

Kong 网关具有以下的特性:

Kong 网关的API接口的典型请求工作流程如下图所示:

  • 可扩展性: 通过简单地添加更多的服务器,可以轻松地进行横向扩展,这意味着您的平台可以在一个较低负载的情况下处理任何请求。
  • 模块化: 可以通过添加新的插件进行扩展,这些插件可以通过RESTful Admin API轻松配置。
  • 在任何基础架构上运行: Kong 网关可以在任何地方都能运行。可以在云或内部网络环境中部署 Kong,包括单个或多个数据中心设置,以及 public,private 或 invite-only APIs。
  • Kong Restful 管理API提供了API、API消费者、插件、upstreams、证书等管理。
  • Kong 插件拦截请求/响应,相当于 Servlet中的拦截器,实现请求的AOP处理。
  • 数据中心用于存储 Kong 集群节点信息、API、消费者、插件等信息,目前提供了PostgreSQL和Cassandra支持,如果需要高可用建议使用Cassandra。
  • Kong 集群中的节点通过 Gossip 协议自动发现其他节点,当通过一个 Kong 节点的管理 API 进行一些变更时也会通知其他节点。每个 Kong 节点的配置信息是会缓存的,如插件,那么当在某一个 Kong 节点修改了插件配置时,需要通知其他节点配置的变更。
  • Kong 核心基于 OpenResty,实现了请求/响应的 Lua 处理化。
【声明】:芜湖站长网内容转载自互联网,其相关言论仅代表作者个人观点绝非权威,不代表本站立场。如您发现内容存在版权问题,请提交相关链接至邮箱:bqsm@foxmail.com,我们将及时予以处理。

相关文章