以下是关于主流的云原生应用引擎的介绍,如果有兴趣了解更多相关的内容,请下载原报告阅读。
(1) NGINX 简介
NGINX 是一款自由的、开源的、高性能的 HTTP 服务器和反向代理服务器;同时也是一个 IMAP、POP3、 SMTP 代理服务器;NGINX 可以作为一个 HTTP 服务器进行网站的发布处理,另外 NGINX 可以作为反向代理 进行负载均衡的实现。
(2) NGINX 的特点
更快:单次请求响应更快,高并发可以更快的处理响应。
高拓展性:设计极具扩展性,由多个不同功能、不同层次、不同类型且耦合度极低的模块组成。
高可靠性:很多高流量网站都在核心服务器上大规模使用 NGINX。
低内存消耗:一般 1 万个非活跃的 HTTP Keep-Alive 连接在 NGINX 中仅消耗 2.5MB 内存。
高并发:单机支持 10 万以上的并发连接。
热部署:master 管理进程与 worker 工作进程的分离设计,使得 NGINX 能够支持热部署。
(1) NJet 简介
NJet 派生自 NGINX,并独立演进的开源应用引擎,可以作为 Web server / 应用代理 / 出入口网关等多种 形式部署。由于继承于 NGINX ,NJet 天生具有高性能、稳定、易扩展的特点。同时 NJet 也解决了 NGINX 长 期存在的难于动态配置、管理功能影响业务等问题。

(2) NJet 特点:
在 NGINX 的 master 和 worker 主运行框架基础上,增加了 Copilot 协助进程框架,用于提供配置管理 功能,并避免此类功能对业务的干扰。
提供动态配置能力框架,用于对现有模块进行动态配置改造,从而避免 reload / restart 对业务的打扰。
内置 HA 能力,可以自动构建高可用集群。
内置集群、配额限制等企业特性。
提供单机管理 API/GUI,便于集成,也利用轻量化部署。
(1) Envoy 简介
Envoy 是作为微服务架构中以独立进程方式实现高级网络功能的,轻量级 7 层服务代理,通常以边车的方 式运行在应用程序的周边,或者作为网络的边缘代理来运行。

(2) Envoy 特点
进程外体系结构 : Envoy 是一款自包含的高性能服务器,具有很小的内存占用空间,它与任何应用程 序语言或框架一起运行。
HTTP/2 支持 : Envoy 对出入流量都有 HTTP / 2 和 gRPC 支持,是一个透明的 HTTP / 1.1 到 HTTP / 2 代理。
高级负载均衡 : Envoy 支持高级负载均衡功能,包括自动重试、断路、全局速率限制、请求镜像和区 域本地负载均衡等。
服务发现和动态配置 : Envoy 提供 API 来动态管理其配置。
可观测性 : 深入观测 L7 流量,原生支持分布式跟踪。
(1) API7 简介
API7 是云原生、高性能、可扩展的微服务 API 网关,提供负载均衡、动态上游、灰度发布、服务熔断、身 份认证、可观测性等丰富的流量管理功能。API7 基于 NGINX 的 OpenResty 分支实现,主要利用 OpenResty 提供的 LUA 扩展能力,实现 API 网关需要的多种业务特性。

(2) API7 特点
高可用:API7 默认选用 etcd 作为配置中⼼得 API7 可以支持毫秒级配置更新、支撑数千网关节点;网 关节点无状态,可任意扩容或缩容。
协议转换:支持丰富的协议类型,如 TCP/UDP、 Apache Dubbo、 MQTT、 gRPC、 SOAP、 WebSocket 等。
安全防护:内置多种身份验证与安全防护能力,如 Basic Auth、JSON Web Token、IP 黑白名单、 OAuth 等。
性能高:API7 使用 Radixtree 算法实现高性能、灵活路由。
全动态能力:修改网关配置、增加或修改插件等,无需重启网关服务即可实时生效;支持动态加载 SSL 证书。
扩展能力强:借助灵活的插件机制,可针对内部业务完成功能定制;支持自定义负载均衡算法与路由 算法,不受限于 API 网关实现。
治理能力丰富:如故障隔离、熔断降级、限流限速等。
(1) Kong 简介
Kong 是 由 Mashape 公 司 开 源 API 网 关, 基 于 OpenResty(NGINX 结 合 LUA 模 块 ) 和 Apache Cassandra 或 PostgreSQL 构建。Kong 的三个主要组件为 Kong server :基于 NGINX 的服务器,用来接收 API 请求;Apache Casssandra/PostgreSQL:用来存储操作数据;Kong dashboard:官方推荐 UI 管理工具。
(2) Kong 特点:
扩展性好:内置插件编写的 API 用于特定功能扩展。
丰富的功能模块:包括身份认证、安全控制、流量控制、分析监控、协议转换、日志应用等。
动态配置能力:可以通过声明式或 Restful 接口可进行高级路由、主动健康检查等各种配置。
授权认证功能丰富:可支持 JWT、OAUTH 或基于 ACL 的访问控制。 原生的 KIC 支持。