对于Kong网关本身基于OpenResty构建,因此前面介绍的OpenResty本身的特性也就成了Kong网关的特性,同时Kong网关本身天然和OpenResty融合在一起,不再需要依赖其他的中间件或Web容器进行部署。
其次就是Kong网关本身的插件化开发机制,通过插件对Http接口请求和响应进行拦截,在拦截处就可以实现各种API接口管控和治理的要求。插件通过Lua语言开发,可以动态插拔。
要实现和Kong网关本身的集成和管理本身也很简单,Kong网关提供各类的Rest API接口,可以很方便的实现和Kong网关能力的对接。也就是说你完全可以自己开发要给API管控治理平台,而底层引擎用Kong网关。
支持高可用集群,节点之间的发现采用的gossip协议,当Kong节点启动后,会将自己的IP信息加入到node列表,广播给任何其他的Kong节点,当另一个Kong节点启动后,会去读取数据库中的node列表,并将自己的信息加入到列表中。
Kong采用插件机制进行功能定制,当前本身已经具备了类似安全,限流,日志,认证,数据映射等基础插件能力,同时也可以很方便的通过Lua定制自己的插件。插件完全是一种可以动态插拔的模式,通过插件可以方便的实现Kong网关能力的扩展。
Kong网关核心组件关键特性
-
Cloud-Native云原生:与平台无关,Kong可以在从裸机到容器的任何平台上运行,并且可以在每个云上本地运行。
-
Kubernetes集成能力:使用官方的Ingress Controller通过本地Kubernetes CRD声明性地配置Kong,以路由和连接所有L4 + L7层网络流量。
-
动态负载均衡:在多个上游服务之间平衡流量。
-
基于哈希的负载均衡:具有一致的哈希/粘性会话的负载均衡。
-
断路器:智能跟踪不健康的上游服务。
-
健康检查:主动和被动监视上游服务。
-
服务发现:在Consul之类的第三方DNS解析器中解析SRV记录。
-
Serverless:直接从Kong调用和保护AWS Lambda或OpenWhisk功能。
-
WebSockets:通过WebSockets与您的上游服务进行通信。
-
gRPC:与gRPC服务进行通信,并通过日志记录和可观察性插件观察流量
-
OAuth2.0:轻松将OAuth2.0身份验证添加到您的API。
-
日志功能:通过HTTP,TCP,UDP或磁盘Log对系统的请求和响应。
-
安全性:ACL,僵尸程序检测,允许/拒绝IP等...
-
Syslog:登录到系统日志。
-
SSL:为基础服务或API设置特定的SSL证书。
-
监控:对关键负载和性能服务器指标提供动态实时监控。
-
转发代理:使Kong连接到透明的中介HTTP代理。
-
认证:HMAC,JWT,Basic等。
-
限流:基于许多变量的阻止和限制请求。
-
转换:添加,删除或处理HTTP请求和响应。
-
缓存:在代理层缓存并提供响应。
-
CLI:从命令行控制Kong群集。
-
开放API接口:Kong可以使用其RESTful API进行操作,以实现最大的灵活性。
-
跨区域复制:跨不同区域的配置始终是最新的。
-
故障检测和恢复:如果您的Cassandra节点之一发生故障,则Kong不会受到影响。
-
群集:所有Kong节点自动加入群集,并在各个节点之间更新其配置。
-
可扩展性:Kong本质上分布,只需添加节点即可水平扩展。
-
性能:Kong通过扩展和使用NGINX作为核心轻松处理负载。
-
插件:可扩展的体系结构,用于向Kong和API添加功能。
Kong网关的主要功能分析

(编辑:阿坝站长网)
【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!
|