• Apache APISIX 和 Kong 的选型对比


    从 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

  • 相关阅读:
    ASP.NET MVC EF4.1
    RabbitMQ Boot Step
    图书商城项目总论
    CodeSharp.EventSourcing框架介绍如何实现异步事件订阅
    asp.net的cms 原理篇
    异步编程:线程概述及使用
    2012
    CodeSharp.EventSourcing框架介绍
    最近开发的一个文档管理系统
    团队项目开发
  • 原文地址:https://www.cnblogs.com/cherylgi/p/15872082.html
Copyright © 2020-2023  润新知