如何用Kong在30分钟内快速实现.NET网关功能改写?
- 内容介绍
- 文章标签
- 相关推荐
本文共计1224个文字,预计阅读时间需要5分钟。
Kong+Openresty是一个基于Nginx和Lua的高性能平台,内部集成了丰富的Lua库。其中,ngx_lua_module模块允许开发者使用Lua脚本调用Nginx模块。Kong是一个Openresty程序,运行于Nginx之上,用于处理请求。
什么是Kong
Openrestry是一个基于Nginx与Lua的高性能平台,内部有大量的Lua库。其中ngx_lua_moudule使开发人员能使用Lua脚本调用Nginx模块。Kong是一个Openrestry程序,而Openrestry运行在Nginx上,用Lua扩展了nginx。所以可以认为Kong = Openrestry + nginx + lua。Kong有很高的扩展性,可以通过其插件机制实现扩展。
官方文档:docs.konghq.com/
Github:github.com/Kong/kong
原理
客户端请求到达Kong,Kong识别出是哪个Consumer,根据路由规则将请求转发给Service对应的上游服务。我们来看看这个过程中涉及到的核心组件
Consumer:代表一个应用,可以为Consumer定义plugin,制定其请求规则。
Route:客户端与服务匹配的规则,是Kong的入口,一旦匹配Route规则,则将其代理到与其关联的Service,一个Route对应一个Service,一个Service有多个Route
Service:管理我们的API或者Upstream Server,Service主要属性是url,端口,协议等
Upstream:位于Kong之后的服务/API,多实例部署实现负载均衡
Plugin:提供高级功能并扩展Gateway。
本文共计1224个文字,预计阅读时间需要5分钟。
Kong+Openresty是一个基于Nginx和Lua的高性能平台,内部集成了丰富的Lua库。其中,ngx_lua_module模块允许开发者使用Lua脚本调用Nginx模块。Kong是一个Openresty程序,运行于Nginx之上,用于处理请求。
什么是Kong
Openrestry是一个基于Nginx与Lua的高性能平台,内部有大量的Lua库。其中ngx_lua_moudule使开发人员能使用Lua脚本调用Nginx模块。Kong是一个Openrestry程序,而Openrestry运行在Nginx上,用Lua扩展了nginx。所以可以认为Kong = Openrestry + nginx + lua。Kong有很高的扩展性,可以通过其插件机制实现扩展。
官方文档:docs.konghq.com/
Github:github.com/Kong/kong
原理
客户端请求到达Kong,Kong识别出是哪个Consumer,根据路由规则将请求转发给Service对应的上游服务。我们来看看这个过程中涉及到的核心组件
Consumer:代表一个应用,可以为Consumer定义plugin,制定其请求规则。
Route:客户端与服务匹配的规则,是Kong的入口,一旦匹配Route规则,则将其代理到与其关联的Service,一个Route对应一个Service,一个Service有多个Route
Service:管理我们的API或者Upstream Server,Service主要属性是url,端口,协议等
Upstream:位于Kong之后的服务/API,多实例部署实现负载均衡
Plugin:提供高级功能并扩展Gateway。

