admin管理员组

文章数量:1558103

分享嘉宾赵旭,vivo 互联网架构师,主要专注于基础架构研发方向。

Apache APISIX 在这两年已经受到了国内很多知名企业的信赖,并纷纷开始在实际生产环境中应用 APISIX。在这个过程中也包揽了很多不同行业的企业用户,比如金融行业的众安保险和安信证券,国产头部车企的吉利和小鹏汽车。其实在国产手机领域中,也有一些头部企业用户在使用,比如 vivo。

vivo 是从去年年中开始在业务生产中正式使用 APISIX 来替换之前传统的 NGINX。目前 APISIX 在 vivo 业务架构的实践和场景支持上都表现得十分出色:

  • 高可用性: 上线至今没有出现重大故障,系统可用性超过 99.99%;
  • 高性能: 承载较大线上流量,服务于较多业务。线上目前转发流量接近百万级 QPS,目前仍处于持续增长的过程中;
  • 功能丰富: 基本覆盖了常见的 NGINX 代理场景,50% 的业务已经迁移到 APISIX 集群;
  • 支撑了云原生的建设和发展: 有效支撑和推动了公司容器化进展,支撑容器平台的物理机器已有万级规模,40% 的业务已经从物理机虚拟机迁移到容器平台。

基于 APISIX 架构设计与定制调整

从上图架构中可以看到,在网关层面我们已经实现了“四层+七层”的代理模式。其中四层网关我们是用 LVS+DPDK 的方式来实现的,流量从外网进入四层网关后会转换到七层网关。而七层网关就是 APISIX 集群,目前这套 APISIX 集群已经实现了容器、物理机、虚拟机等容器混合流量部署的接入功能。

图中红色部分,则是我们正在使用的一些自研和开源项目,并借助这些项目实现整个流量转发体系。另外在架构中,我们还实现了 APISIX 集群拆分的管理功能。

这套架构基于 APISIX 开源版本我们也进行了一些调整,主要是在控制面和数据面进行了更贴合内部业务的改造。

配置管理与发布改造

当业务从 APISIX 变更平台配置好相关数据后,变更平台会通过 RPC notify 的方式发送给 Manager API。之后 Manager API 会通过 RPC notify 方式发送给部署在 APISIX 集群中的 apisix-agent。然后 APISIX 会通过 privilege 特权进程,定时轮询

本文标签: 之久架构业务基础APISIX