了 NGINX 和 Kong,为什么还需要 Apache APISIX?

本文探讨了为何在已有 NGINX 和 Kong 的情况下,仍然需要 Apache APISIX。Apache APISIX 的创始人分享了其创建背景,指出 NGINX 的社区不活跃、路由功能弱以及缺乏统一集群管理方案等问题。同时,Kong 的控制面并非完全云原生。Apache APISIX 作为一个高性能、动态的 API 网关,解决了这些问题,拥有活跃的社区和全面优于 Kong 的功能。此外,APISIX 支持多语言,具备高性能、动态配置等优点,旨在统一代理基础设施。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

有了 NGINX 和 Kong,为什么还需要 Apache APISIX?

2021 年 5 月,云原生社区技术沙龙·广州站,Apache APISIX 开源项目创始人 & PMC 王院生在活动上做了《有了 NGINX 和 Kong,为什么还需要 Apache APISIX》的分享,以下是现场分享的文字版。
以下分享仅代表作者个人观点。

大家好,非常开心给大家分享一个让我激动的主题《有了 NGINX 和 Kong,为什么还需要 Apache APISIX》。

之所以我们要做 NGINX 和 Kong 的替代项目,实际和我们后端架构演变史大背景息息相关,我会先和大家一起分享后端架构演变过程,这非常重要。

首先做下自我介绍,本人叫王院生。和这次大会主办者净超一样我们都做社区很久,我在 15 年写了一本电子书叫《OpenResty 最佳实践》,通过这本书结成了一个超万人社区。从那个时候开始个人对开源本身越发感兴趣,15 年以前我基本上主要是开源软件的使用者,然后慢慢变成社区的一个协办者,再往后变成社区领导者,也许你会问为什么?很简单,因为这本书是你写的,别人遇到各种各样的问题,有高级的也有比较普通的,问得多了我就逐步成为老师并最终成了社区领导者,像那句名言“走的人多了,也变成了路”。

2019 年我与合伙人温铭一起创办了深圳支流科技公司,它是一家以开源为依托的商业化公司。这家公司承载了我俩很多个人理想,也可以说是在做每一位普通程序员的理想,不想庸庸碌碌 996,我经常对别人说我的梦想就是“把我的名字刻入史册”,悲催的是人类已经不需要史册了。

这是我们团队,大家主要是远程协作,所有人聚在一起比较难。公司早期阶段只有五六个人时,还能比较容易的把团队聚起来,但从今年之后就一直没聚齐过,这是我们今年到目前以来最齐的一次(但依然有几位同学没能一起)。
作为一家技术说了算的商业公司,技术在我司有非常大的话语权,尊重技术从尊重技术人才开始。没有 996 ,没有上班打卡,远程办公,欢迎感兴趣的同学联系我们,期待有梦想、有理想的你加入我司。

这次演讲主题需要一些背景,我们先说说后端架构演变史。先跟大家回顾一下这张图,右图部分从上到下它不是具体数据流程图,它是我们后端架构演变史。从最传统的单体大应用,然后变成面向服务架构(SOA),然后是微服务,分别出现了 Spring Cloud 和 Kubernetes。Spring Cloud 架构主要服务 JAVA 语言开发者,Kubernetes 是容器编排支持任何语言,以及最近社区比较热的话题服务网格。
我经常跟公司同事说,咱们展望未来五年,甚至是十年之后,哪个架构是最终极方案?从目前信息看,服务网格会大概

### KongApisix 的对比分析 #### 差异点概述 Kong Apache APISIX 都是流行的开源 API 网关解决方案,但在架构设计、性能表现以及功能特性上存在显著差异。以下是两者的主要区别: 1. **项目背景与发展** - Kong 是由 Kong Inc 开发并维护的一个成熟的商业支持型开源网关工具[^2]。它基于 NGINX 构建,并通过 Lua 脚本扩展其核心能力。 - Apache APISIX 则是由腾讯云贡献给 Apache 基金会的顶级项目之一[^3]。同样依赖于 OpenResty(NGINX + Lua),但它引入了动态路由配置插件热加载等功能。 2. **可扩展性灵活性** - Kong 提供了一个插件机制来增强其基础功能集;然而新增加的功能通常需要重启服务才能生效[^4]。 - 相较之下,Apache APISIX 支持实时更新而无需停机操作——这得益于它的声明式 API 设计理念及其内部实现方式[^5]。 3. **高可用性与容错处理** - 在分布式环境中运行时,Kong 使用 PostgreSQL 或 Cassandra 数据库作为集群状态存储器以保持一致性[^6] 。这种做法虽然可靠但也增加了运维复杂度. - 对应地,APISIX采用了etcd作为控制平面的数据持久化层,具备更轻量级部署模型的同时还提供了更好的读写效率[^7]. 4. **社区生态与文档质量** - 就目前来看,kong拥有更加成熟完善的生态系统以及丰富的第三方集成选项[^8]. 它在全球范围内积累了大量忠实用户群体,因此可以获得广泛的技术支持资源. - 反观apisix尽管起步稍晚些,但凭借快速迭代周期加上来自apache基金会背书效应,正逐步缩小差距.[^9] --- #### 应用场景探讨 对于企业而言,在选择合适的API Gateway产品之前应该考虑以下几个方面因素: - 如果团队倾向于采用经过时间考验的传统方案并且愿意承担额外管理成本的话那么kong将是不错的选择; - 当追求极致性能指标或者希望减少基础设施开销的情况下可以优先考察apisix; 具体来说, | 特性 | Kong | Apache APISIX | |---------------------|------------------------------------------------------------------------------------------|---------------------------------------------------------------------------------------| | 易用程度 | 较高的学习曲线由于涉及数据库同步等问题 | 更直观友好的界面配合简单命令行即可完成大部分日常任务 | | 性能优化潜力 | 主要受限于底层nginx框架 | 自定义lua脚本结合多线程模式能够带来更大吞吐量 | | 插件开发难易度 | 编写新模块相对繁琐 | 提供sdk简化流程 | 综上所述,两种技术路线各有千秋需根据实际需求权衡利弊后再做决定. ```bash # 示例安装命令 sudo apt-get install kong # For Kong installation on Debian-based systems brew install apache/apisix/apache-apache --with-dashboard # MacOS Homebrew method for installing APISIX including dashboard UI component ``` ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

API7.ai 技术团队

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值