APISIX into the Apache Incubator

US Time October 17, 2019, the open-source micro-services API Gateway APISIX formal entry into the Apache Incubator.

According to the Apache Foundation mailing list showed 11 binding (binding votes) and a non-binding (non-binding vote) to vote all of a favorable opinion, no abstentions and negative votes, the vote passed.

APISIX by the start-up company in Shenzhen tributary contribution of science and technology is a high-performance, scalable micro-services API gateway. It is based on Nginx and etcd to achieve, and compared to the traditional API Gateway, APISIX with dynamic routing, plug-in thermal load, gRPC protocol conversion and other functions, especially for API management services under the micro system.

Why tributary Technology Development APISIX?

API Gateway is not a new concept, more than ten years ago, has been in existence, its main function is as an inlet flow rate, unified processing and service related requests, make the request more safe, fast and accurate processed. It has the following features traditional:

1. reverse proxy and load balancing, and this location and function of Nginx is consistent;

2. Dynamic upstream dynamic SSL certificates and dynamic current limit function operates when the dynamic rate limit, which is the open source version Nginx not have the function;

3. upstream of active and passive health checks, and service fuse;

4. Expanding on top of the API gateway, API management platform to become full life cycle.

In recent years, traffic-related business, is no longer just initiated by the client PC and browser, for more from a mobile phone, IoT equipment, 5G future as the popularity of these flows will be more and more, at the same time, with the structural changes in the micro-service architecture, traffic between the service began explosive growth. In this new business scenario, it gave birth to the API Gateway more and more advanced features:

1. Cloud Native friendly architecture to become lightweight, easy to containerized;

2. docking Prometheus, Zipkin, Skywalking statistical, monitoring component;

3. Support gRPC, Dubbo, websocket, MQTT protocols such agents, and http protocol conversion between the gRPC, in order to accommodate a wider range of scenarios;

4. 承担 OpenID Relying Party  的角色,对接 Auth0、okta 等身份认证提供商的服务,把流量的安全作为头等大事来对待;

5. 通过运行时动态执行用户函数的方式来实现 serverless,让网关的边缘节点更加灵活;

6.支持插件的热加载,新增、删除和修改插件,都不用重启服务;

7. 不锁定用户,支持混合云的部署架构;

8. 最后就是网关节点要状态无关,可以随意的扩容和缩容。

有了这些功能,用户的服务就只用关心业务本身,而和业务实现无关的功能,比如服务发现、服务熔断、身份认证、限流限速、统计、性能分析等,就可以在独立的网关层面来解决。从这个角度来看,API 网关既可以替代 Nginx 的所有功能,来处理南北向的流量,也可以完成 Istio 控制面和 Envoy 数据面的角色,来处理东西向的流量。

而现有的开源 API 网关并不能很好的满足,所以支流的技术团队决定自己实现一个简洁、高效、方便扩展的 API 网关,也就是 APISIX。

APISIX 的发展历程

APISIX 是一个蓬勃发展的开源项目,在 2019 年 6 月 6 号开源后,很快就获得了开发者的关注和兴趣,并在一个月之后被收录到 CNCF(云原生软件基金会) 的全景图中。

现在 APISIX 在 GitHub 有 800 多个 star,近 30 名代码贡献者,并聚集了 500 多人的开发者社区。从开源之初,APISIX 就保持每个月发布一个版本,并坚持测试驱动开发、自动化 CI/CD 等理念,来保证代码的质量和稳定性。

目前,参与开发、测试和使用 APISIX 的公司包括:贝壳找房、魅族、大搜车、租租车、腾讯云、海尔优家、泰康云、中国航信、HelloTalk、fansup 等。

APISIX 的特点

Apache APISIX 在技术上与其他 API 网关相比,有以下几个与众不同之处:

使用 etcd 而不是关系型数据库来保存配置,这就大大降低了使用、部署和维护的复杂度,也让代码变得更加易读,核心代码只有 3892 行,非常有利于二次开发和扩展。下图是 Apache APISIX 的部署架构图:

插件可以热插拔,不用重启服务。并且已经内置了常见的限流限速、身份认证、请求改写、URI 重定向、opentracing、serverless 等插件,开箱即用:

极致的性能。从路由、jsonschema 校验,到插件运行,都是采用了性能优先的解决方案,在性能测试跑满 CPU 的情况下,请求的平均延时也不到 0.7 毫秒,不到同类开源项目的十分之一。(下图的横坐标表示 CPU 的核数)

关于 Apache APISIX 的更多功能,可以访问项目主页来查看。

写在最后

APISIX 社区将遵循 The Apache Way,用更加开放和全球化的视野,欢迎更多的开发者参与到社区建设中来,让社区持续健康的发展。欢迎开发者关注 APISIX,一起来构建世界级的开源项目。

Guess you like

Origin www.oschina.net/news/110843/apisix-in-apache-incubator