从 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. 浅触go中的单元测试

    对于一个写好的功能模块,我们还需要对其进行单元测试,确保该模块不会出现其他bug,或者输出不是期望结果 对于一个go程序,主要设计以下命令: 执行测试 go test -v / go test 执行某 ...

  2. uni-app 路由封装(简易版)

    在实践运用中,经常需要在路由跳转时判断是否需要登录权限,页面跳转时,添加加在if判断. 插件市场也有一些这种插件,配置也稍微复制,大部分朝向vue-router. 注:本次路由封装,只是单纯的判断是否 ...

  3. python png 转 icon文件

    pip install pillow from PIL import Image def png_to_ico(png_path, ico_path): img = Image.open(png_pa ...

  4. IDEA - ruoyi - srpingboot - 离线运行

    前提:有项目对应的repository文件,RY的DB配置正常(mysql新增schema ry, 执行 /sql下的sql文件,同步调整ruoyi-admin下的application-druid. ...

  5. 神经网络之卷积篇:详解简单卷积网络示例(A simple convolution network example)

    详解简单卷积网络示例 假设有一张图片,想做图片分类或图片识别,把这张图片输入定义为\(x\),然后辨别图片中有没有猫,用0或1表示,这是一个分类问题,来构建适用于这项任务的卷积神经网络.针对这个示例, ...

  6. sql 查询死锁

    1 -- 查询死锁 2 --第一种 3 sp_lock 4 5 --第二种 6 select object_name(resource_associated_entity_id) as tableNa ...

  7. 城市时空预测的统一数据管理和综合性能评估 [实验、分析和基准]《Unified Data Management and Comprehensive Performance Evaluation for Urban Spatial-Temporal Prediction [Experiment, Analysis & Benchmark]》

    2023年11月1日,还有两个月,2023年就要结束了,希望在结束之前我能有所收获和进步,冲呀,老咸鱼. 论文:Unified Data Management and Comprehensive Pe ...

  8. Angular 16+ 高级教程 – Angular 和其它技术方案的比较

    前言 上一篇我有提到 Angular 适合用于哪些项目,但讲的太含糊,什么大中小项目的...这篇我将更具体的去讲解,Angular 的定位,还有它和其它方案的优缺点. Web 技术可以用来做许许多多不 ...

  9. 面试官的几句话,差点让我挂在HTTPS上

    作为软件测试,大家都知道一些常用的网络协议是我们必须要了解和掌握的,比如 HTTP 协议,HTTPS 协议就是两个使用非常广泛的协议,所以也是面试官问的面试的时候问的比较多的两个协议:而且因为这两个协 ...

  10. Listener——监听器

    Listener