从 API 网关核心功能点来看,两者均已覆盖:

功能 Apache APISIX Kong
动态上游 支持 支持
动态路由 支持 支持
健康检查和熔断器 支持 支持
动态SSL证书 支持 支持
七层和四层代理 支持 支持
分布式追踪 支持 支持
自定义插件 支持 支持
REST API 支持 支持
CLI 支持 支持

更详细的比较:

功能 Apache APISIX Kong
项目归属 Apache 软件基金会 Kong Inc.
技术架构 Nginx + etcd Nginx + postgres
交流渠道 微信群、QQ群、邮件列表、Github、meetup Github、论坛、freenode
单核QPS(开启限流和premetheus插件) 18000 1700
平均延迟 0.2毫秒 2毫秒
配置生效时间 事件通知,低于1毫秒更新 定期轮询,5秒
支持 Dubbo 代理
配置回滚
支持生命周期的路由
插件热更新
用户自定义:负载均衡算法、路由
resty <--> gRPC 转码
支持 Tengine 作为运行时
MQTT 协议支持
自带控制台
对接外部身份认证服务
配置中心高可用(HA)
指定时间窗口的限速
支持任何 Nginx 变量做路有条件

压测环境

测试平台:阿里云 ecs.hfg5.2xlarge 8 vCPU 32 GiB。

测试方法:分别开启指定 worker 数量(单核、多核),然后用 wrk 加大压力测试。这里要把 API 网关资源打满(主要是 CPU)。而压测客户端、上游服务都正常服务,不是瓶颈。

开启 prometheus 和 limit-count 两个插件。

测试版本:Apache APISIX 0.9 和 Kong 1.4.3

测试脚本:https://gist.github.com/membphis/137db97a4bf64d3653aa42f3e016bd01

压测场景 1:只开启一个 worker

详细压测结果(大家可以这里的脚本,自己来重现性能测试的结果)

** Apache APISIX 在不开启插件,只做反向代理的情况下,是 Kong QPS 的 2 倍;在开启限流和prometheus这两个插件后,性能是 Kong 的 10 倍。 **



** Apache APISIX 在不开启插件,只做反向代理的情况下,是 Kong 延迟的一半;在开启限流和prometheus这两个插件后,延迟是 Kong 的十分之一。**



压测场景 2:开启 4 个 worker

详细压测结果







通过性能测试可以看到,在不开启插件的情况下,Apache APISIX 的性能(QPS 和延迟)是 Kong 的2倍,但开启了两个常用插件后,性能就是 Kong 的十倍了。

转载:https://zhuanlan.zhihu.com/p/103236688

Apache APISIX 和 Kong 的选型对比的更多相关文章

  1. 云原生API网关全生命周期管理Apache APISIX探究实操

    @ 目录 概述 定义 NGINX 与 Kong 的痛点 APISIX 的技术优势 特性 架构 应用场景 主要概念 部署 快速入门 quickstart安装 Admin API创建路由 RPM安装 安装 ...

  2. 景顺长城基于 Apache APISIX 在金融云原生的生产实践

    本文介绍了景顺长城在金融云原生架构演进中选择 APISIX 作为网关工具的技术细节,同时分享了使用 APISIX 的实践细节,并对 APISIX 的未来展望进行了探讨. 作者李奕浩,景顺长城信息技术部 ...

  3. 王院生:Apache APISIX 微服务网关极致性能架构解析

    2019 年 10 月 27 日,又拍云联合 Apache APISIX 社区举办 API 网关与高性能服务最佳实践丨Open Talk 杭州站活动,Apache APISIX PPMC 成员王院生做 ...

  4. MQ选型对比RabbitMQ RocketMQ ActiveMQ

    原文:MQ选型对比RabbitMQ RocketMQ ActiveMQ 几种MQ产品说明:     ZeroMQ :  扩展性好,开发比较灵活,采用C语言实现,实际上他只是一个socket库的重新封装 ...

  5. 当 Amazon Lambda 遇上 Apache APISIX 可以擦出什么火花?

    本文首先介绍了什么是 Serverless,以及为什么需要 Serverless:其次,讲述了一个好的网关在 Serverless 架构下的重要性,而 APISIX 就是这样的一个网关:最后,本文重点 ...

  6. 网关 apache APISIX

    网关 apache - 国内版 Binghttps://cn.bing.com/search?q=%E7%BD%91%E5%85%B3+apache&qs=n&form=QBRE&am ...

  7. 基于 Apache APISIX 的下一代微服务架构

    2019 年 12 月 14 日,又拍云联合 Apache APISIX 社区举办 API 网关与高性能服务最佳实践丨Open Talk 广州站活动,Apache APISIX PPMC 温铭做了题为 ...

  8. 从 0 到 1:Apache APISIX 的 Apache 之路

    2019 年 12 月 14 日,又拍云联合 Apache APISIX 社区举办 API 网关与高性能服务最佳实践丨Open Talk 广州站活动,本次活动,邀请了来自Apache APISIX.又 ...

  9. Apache APISIX 的安装和配置请求转发url匹配

    安装apisix套件 创建一个apisix文件夹,在apisix文件夹下再创建一个etcd_data文件夹,用来持久化etcd的数据 在apisix文件夹下 新建3个文件 config.yaml,  ...

  10. CVE-2021-45232 Apache APISIX 从未授权访问到RCE

    00x1漏洞环境 Apache APISIX Dashboard 2.7 - 2.10 版本受到影响 通过git拉取在docker搭建环境 git clone https://github.com/a ...

随机推荐

  1. 【Java】之获取CSV文件数据以及获取Excel文件数据

    一.获取CSV文件数据 import org.apache.poi.ss.usermodel.Cell; import org.apache.poi.ss.usermodel.Sheet; impor ...

  2. .NET 开源报表神器 Seal-Report

    前言 Seal-Report 是一款.NET 开源报表工具,拥有 1.4K Star.它提供了一个完整的框架,使用 C# 编写,最新的版本采用的是 .NET 8.0 . 它能够高效地从各种数据库或 N ...

  3. 图文教程:从0到1将项目发布到 Maven 中央仓库

    前言 本文基于官方文档 https://central.sonatype.org/publish/publish-guide/ 编写. 发布步骤: 创建账号 创建用户 Token 创建命名空间 配置 ...

  4. 阿里云【七天深入MySQL实战营】

    阿里云[七天深入MySQL实战营] 最近报名了阿里云[七天深入MySQL实战营].不过一直没时间看[最主要还是自己懒],看了下课程及答疑信息,感觉应该还可以,分享出来和大家一起学习学习​.现在课程已经 ...

  5. 使用inno setup 打包Pyinstaller生成的文件夹

    背景:pyinstaller 6.5.0.Inno Setup 6.2.2 1. 需要先使用pyinstaller打包,生成包括exe在内的可执行文件夹 注意:直接使用pyinstaller打包,生成 ...

  6. ERR_INVALID_REDIRECT

    原因为: response.sendRedirect(url) url地址写错了

  7. R-Adapter:零样本模型微调新突破,提升鲁棒性与泛化能力 | ECCV 2024

    大规模图像-文本预训练模型实现了零样本分类,并在不同数据分布下提供了一致的准确性.然而,这些模型在下游任务中通常需要微调优化,这会降低对于超出分布范围的数据的泛化能力,并需要大量的计算资源.论文提出新 ...

  8. 海光 FTPM 运行报错:Fapi_Provision_Finish() ErrorCode (0x00060025) No EK certificate found.

    使用的是海光 CPU 提供的基于固件的 FTPM,错误原因是海光没有给 TPM 提供相应的 EK 证书.从而导致Fapi_Provision()接口无法通过证书的校验.关于Fapi_Provision ...

  9. Hadoop & Redis未授权漏洞实战——Vulfocus服务攻防

    什么是未授权访问漏洞?Hadoop & Redis靶场实战--Vulfocus服务攻防 一.介绍 未授权访问,也称为未经授权的访问或非法访问,是指在没有得到适当权限或授权的情况下,个人或系统访 ...

  10. 基于语义增强的少样本检测,突破新类别偏见 | ICIP'24

    Few-shot目标检测(FSOD)旨在在有限标注实例的情况下检测新颖对象,在近年取得了显著进展.然而,现有方法仍然存在偏见表示问题,特别是在极低标注情况下的新颖类别.在微调过程中,一种新颖类别可能会 ...