Categories
程式開發

官宣!APISIX 毕业成为 Apache 软件基金会顶级项目


全球最大的开源软件基金会 Apache 软件基金会(ASF)于北京时间 2020 年 7 月 15 日宣布, Apache® APISIX™ 毕业成为 Apache 顶级项目(TLP)。

Apache APISIX 是一个云原生 API 网关,可以用来处理网站、移动设备和 IoT 的流量。它是由初创公司深圳支流科技在 2019 年 6月份开源,并在同年 10 月捐赠给 Apache 基金会开始孵化。

据介绍,Apache APISIX 是一个动态、实时、高性能的 API 网关,提供负载均衡、动态上游、灰度发布、服务熔断、身份认证、可观测性等七层流量管理功能。它的技术架构如下图所示:
官宣!APISIX 毕业成为 Apache 软件基金会顶级项目 1

Apache APISIX 由以下三个部分组成:

  • 数据面:使用 Lua 和 Nginx 动态控制请求流量,通过插件机制来实现各种流量处理和分发的功能:限流限速、日志记录、安全检测、故障注入等,同时支持用户编写自定义插件来对数据面进行扩充。
  • 控制面:使用 etcd 来存储和同步网关的配置数据,管理员通过 admin API 或者 dashboard 可以在毫秒级别内通知到所有的数据面节点,同时 etcd 集群也保证了系统的高可用。
  • 智能面(正在实现中):开发者可以使用 DAG(有向无环图)对插件进行编排,通过决策树对请求流量进行实时分析和处理。

据介绍,Apache APISIX 现在有 30 多个插件,比如限流限速、IP 黑白名单、日志记录、可观测性等,除此之外还有以下特性:

动态:动态路由和证书,插件热加载,适合微服务环境下的 API 管理;

可靠:自带高可用方案,以及多个安全和身份认证插件,提升系统的可靠性和安全性;

开发者友好:带有开源版本 Dashboard,方便开发者体验;并提供灵活 Admin API;

高性能:从路由、IP 匹配器、JSON Schema 校验,到插件,都是按照满足最高性能指标来设计和实现的;

多协议和平台支持:支持 HTTP(s)、TCP、UDP、HTTP 到 gRPC 的转码,支持websocket、gRPC、Apache Dubbo、MQTT,并且支持包含 k8s、ARM64、裸金属在内的多个平台。

目前包括贝壳找房、奇虎 360、思必驰、泰康云、腾讯云、中国航信、Airwallex 等在内的十几家客户已经在使用Apache APISIX。

“感谢 Apache APISIX 的导师、项目贡献者和 Apache 孵化器的支持,让 APISIX 能够成长为 Apache 顶级项目”,Apache APISIX 项目 VP,温铭说,“进入 Apache 孵化器后,Apache APISIX 从一个商业公司主导的开源项目,转变为遵循 Apache Way,由社区主导的项目。”

据温铭介绍,Apache APISIX 是一个活跃而多样化的社区,现在有 90 多名来自全球的贡献者,项目欢迎更多感兴趣的开发者通过 GitHub 和邮件列表来参与,以 Apache Way 来推动社区的发展。