03-基于Apache APISIX的全流量API网关-温铭Apache 顶级项目 • 全动态:路由、SSL 证书、上游、插件… • 40 多个插件,覆盖:身份认证、安全、日志、可观测性… Apache APISIX 设计思路 • API 网关的数据面和控制面分离 • 通过插件机制来方便二次开发和运维 • 高可用,没有单点故障 • 安全和稳定第一:基于 Nginx 实现;mTLS 认证;敏感信息加密加盐(salt)保存 • 高性能:单核心 QPS 1.5 万,延迟低于 nginx 的所有变量作为条件,并且支持自定义函数;其他网关都是 内置的几个条件; • Apache APISIX 使用 etcd 作为配置中心,没有单点,任意宕掉一台机 器,网关集群还能正常运行。其他基于 mysql,postgres 的网关都会有单点 问题 • Apache APISIX 的配置下发只要 1 毫秒就能达到所有网关节点,使用的是 etcd 的 watch;其他网关是 定期轮询数据库,一般需要 支持SkyWalking 是 否 插件热更新 新增、删除、更新插件不用 重载服务 无, 每次都需要重载 服务 二次开发 难度低 难度中等 本地技术支持 有, 1小时响应 无 定期巡检和培训 有 无 基于 Apache APISIX 的全流量网关 Nginx 遇到的挑战 • 社区不活跃:没有 github issue 和 PR • 没有跟进云原生:nginx-k8s-controller、nginx0 码力 | 11 页 | 6.56 MB | 6 月前3
基于 Apache APISIX 的下一代微服务架构 -- 从 0 到 1:APISIX 的 Apache 之路沟通方式:邮件列表公开聊(异步、慢)还是私聊(同步、快)? • 投票:精英民主还是仁慈的君主? • 职位:是义务还是权力? 持续召集贡献者和 committer 讨论:Nginx 的版权问题 基于 Apache APISIX 的 下一代微服务架构 温铭 wenming@apache.org 大纲 • Apache APISIX 是什么? • Apache APISIX 能解决什么问题? 微服务是如何演进到 Service Mesh 的? • Service Mesh 是银弹吗? • 下一代微服务架构是什么? Apache APISIX 是什么? • 云原生微服务 API 网关 • 基于 Nginx 和 etcd 实现 • 集成了控制面和数据面 • 提供灵活的插件机制 • 动态上游、动态路由、插件热加载 快速的成长 • 6 月 6 号开源 • 7 月被纳入 CNCF0 码力 | 33 页 | 1.55 MB | 1 年前3
Apache APISIX
微服务⽹关性能架构解析brileyhe 开源,开⼼心 什什么是 API ⽹网关 微服务 API ⽹网关 重复造轮⼦子 why? ⾏行行业⽼老老⼤大:⼤大多基于 Java + JS,性能差,不不⽀支持⼆二 次开发。⽐比如 Apigee、3Scale、Amazon 等。 ⾏行行业远⻅见者:多基于 OpenResty + Golang,少数开 源,⽐比如:Tyk、Kong 等,代码量量较重。 Apache APISIX 机会:轻巧 插件热加载/卸载 • 允许插件挂载任何阶段 • 路路由⾃自身也是插件 Apache APISIX ⾃自豪 • ⽀支持 ARM64 • 完整⽀支持 IPv6 • 物联⽹网 MQTT 协议 • 基于 OpenResty / Tengine • 极致性能 jsonschema • ASF 第⼀一个 API ⽹网关项⽬目 微服务 API ⽹网关部署 client API Gateway 历史+事务 • 低于毫秒的变化通知 Apache APISIX 技术选型 开发平台:Lua 或 Golang •OpenResty >= 1.15.8 •Tengine >= 2.3.2 •基于 Nginx •调⽤用动态库:C/C++,Golang 等 Apache APISIX 技术选型 数据校验:jsonschema • 数据校验规范:Google 排名第⼀一 • 有多个0 码力 | 41 页 | 15.62 MB | 1 年前3
Apache APISIX 在安信 PaaS 平台的应用IAM skywalking prometheus kafka-logger ... APISIX在安信PaaS平台的应用 1、路由转发 2、认证 3、鉴权 4、链路 5、监控 6、日志 CAS 与 casbin 2、用户状态支持本地存储 3、用户状态支持redis存储 4、casbin 兼容 RBAC with domain 1、认证鉴权功能从业务代码剥离 APISIX APISIX helm模板 APISIX 插件模板 APISIX upstream&API 应用模板 应用发布 安信PaaS平台如何管理APISIX 版本、节点数、资源、配置文件 链路、监控、日志、认证、流控 APISIX 告警模板 对接内部告警平台 初始化 upstream 和 API service1 service2 service3 service1/* service2/* service3/* ingress做网关入口可能产生的问题 1、独立集群 or 共享集群 2、插件场景匹配 3、云原生环境下的问题 下一步 04 共享集群、API市场、请求数据分析... 资源共享、工作分区隔离 中台系统的公共接口,比如日志平台、监控平台、告警平台等的对外接口 接口权限统一管理、流量控制 调用量、异常响应、延迟 Top N... 1、共享集群建设 2、API 市场 3、请求数据分析 4、APISIX-Ingress、APISIX+Istio0 码力 | 14 页 | 621.17 KB | 1 年前3
Apache APISIX 在金山办公的开发和落地实践Apache APISIX 在金山办公的开发和落地实践 张强 金山办公 01 前情回顾&增补 02 关于 OpenResty 和 Lua 的思考 03 基于 Apache APISIX 破局 04 解决 Nginx 带来的问题 CONTENT W r i t e h e r e S o m e t h i n g a b o u t 前情回顾 & 增补 01 About •金山办公云原生应用组流量网关 � 难上加难,左右为难 W r i t e h e r e S o m e t h i n g a b o u t 基于 Apache APISIX 破局 03 基于 Apache APISIX 破局 Apache APISIX 的价值 设计优异的开发框架 基于 Apache APISIX 破局 "All problems in computer science can be solved engineering (FTSE) 基于 Apache APISIX 破局 What about… Rust + Lua + Nginx? 让 Lua 回归胶水本质! 基于 Apache APISIX 破局 How ? 基于Lua的C API(lua_*),构建原生lua模块,产物为一个Shared Object, Lua可以直接require并使用其中的symbol 基于 Apache APISIX0 码力 | 27 页 | 4.88 MB | 1 年前3
API7 ⽹关技术⽩⽪书API7⽹关技术⽩⽪书 (版本:2022-02) ⼀.整体介绍 ⽀流科技API⽹关产品(以下简称API7)是基于Apache软件基⾦会顶级项⽬ApacheAPISIX构建 的,包含了API⽹关、ManagerAPI与Dashboard控制⾯板3个组件。 API⽹关作为微服务架构中重要组件,是流量的核⼼出⼊⼝,⽤于统⼀处理和业务相关的请求,可有 ⽤⼾系统:借助⽤⼾系统,管理员将对系统内各个⽤⼾进⾏权限资源划分,⽤⼾不可越权访问资 源。⽀持账⼾密码登陆与SSO登陆; • 权限系统:内置基于⻆⾊的权限管理系统(RBAC),管理员可借助控制台创建不同⻆⾊,通过将 ⽤⼾与⻆⾊绑定,可实现针对某类⽤⼾细粒度的权限管控; • 多租⼾(多⼯作分区):⽀持基于⼯作分区隔离的多租⼾模型,管理员可创建不同的⼯作分区,并 指定哪些⽤⼾对⼯作分区有哪些资源的访问权限; • 多 f-rbac等。此外,借 助内置的HMAC插件,可使⽤AK/SK对请求参数进⾏签名与校验,以实现请求防篡改、请求防重 放的需求,并能够达到鉴权的⽬的; • 服务路由:API7基于Radixtree实现⾼效的路由匹配,是⽬前匹配路由速度最快的API⽹关。它⽀ 持全路径匹配、前缀匹配,也⽀持使⽤Nginx内置变量作为匹配条件,以此实现精细化路由。此 外,API70 码力 | 19 页 | 1.12 MB | 1 年前3
金卫-Apache APISIX 借助 Service Mesh 实现统一技术栈的全流量管理在 Service Mesh 上的尝试 控制面的抉择 控制面 - 拥抱 Istio Istio 是当前最为流行的服务网格方案 社区活跃 几乎所有主流云厂商都对 istio 有支持 基于 istio 做商业支持的公司也很多,比如 tetrate, solo APISIX作为Istio数据面 使用动态库的方式加载到APISIX 与APISIX生命周期一致 转换 xDS 协议 Apache APISIX的应用案例 https://apisix.apache.org/zh/blog/tags/case-studies/ APISIX Service Mesh Amesh 基于 Apache APISIX 实现 Service Mesh 解决方案 性能提升 • QPS 提升 5倍 • 延迟降低一个数量级 Apache APISIX envoy QPS 59122 12903 降低 Sidecar 资源占用 按需下发配置 配置本身的精简 资源占用降低了 60% 较低的学习/维护成本 APISIX 丰富的文档,快速上手 抽象出来的网关对象通俗易懂 源码基于 lua 易学易懂 二次开发相比 C++ 要简单许多 强大的扩展/定制化能力 配合CRD进行扩展,更灵活 更原生 不侵入Istio原有配置 降低用户迁移成本/减少冲突可 能 通过0 码力 | 34 页 | 3.50 MB | 6 月前3
APISEVEN 和Kong EE 的性能评测西向流量。它也可以作为⼀个k8singresscontroller。 API7是APISIX的企业版,其功能包括多集群管理、多分区、权限管理、版本管理、审计、统计报告 等,满⾜企业⽤⼾的核⼼需求。 以下是API7基于ApacheAPISIX的技术架构(图1)。 图1.API7技术架构 API7是混合云的部署模式,可⽤于多云、企业内部和混合环境。 Kong企业版 Kong的原名是Mash 7×24h的服务⽀ 持。2019年,Kong发布了⼀个完全托管的云产品,KongCloud。我们没有测试KongCloud。 Kong企业版既可以部署在云上,也可以部署在企业内。基于Debian和RedHat的包管理器(Yum和 Apt-Get),在他们的仓库⾥有Kong,⽽且还有Docker和CloudFormation选项。 Kong可以作为⼀个单节点运 name(FQDN)。 Kong有⼀个插件⽣态系统(KongHub),⽀持开源和企业版的插件,如LDAP认证、CORS、动态 SSL、AWSLambda、Syslog等。因为它是基于NGINX的,所以Kong允许⽤⼾使⽤LuaJIT创建⾃⼰ 的插件。 3-GigaOmAPI负载测试设置 API压⼒测试 GigaOmAPIWorkloadFie0 码力 | 14 页 | 1.11 MB | 1 年前3
有了 NGINX 和 Kong,为什么还需要 Apache APISIX-王院生《OpenResty 最佳实践》作者 深圳⽀流科技创始⼈ & CTO 云 原 ⽣ 社 区 M e e t u p 第 四 期 · ⼴ 州 站 ⽀流科技 • 2019 年 4 ⽉成⽴的开源商业公司 • 基于 Apache APISIX 提供原⼚⽀持和商业产品 • 投资⽅:真格基⾦,真成投资,顺为资本 云 原 ⽣ 社 区 M e e t u p 第 四 期 · ⼴ 州 站 ⽀流科技 • 开源爱好者 e e t u p 第 四 期 · ⼴ 州 站 APISIX 定位 云 原 ⽣ 社 区 M e e t u p 第 四 期 · ⼴ 州 站 LB / API Gateway (1) • 基于 Nginx,⽀持 Nginx -> APISIX 灰度迁移 • 全动态,⽆需 reload • HTTP(S) 精细化路由 • 内置 40+ 插件,功能强⼤ • ⾃带集群⽅案和控制⾯ 云 原0 码力 | 34 页 | 25.78 MB | 6 月前3
从Apache APISIX 来看API 网关的演进• API 网关的演进 • 微服务是如何演进到 Service Mesh 的? • 下一代微服务架构是什么? Apache APISIX 是什么? • 云原生微服务 API 网关 • 基于 Nginx 和 etcd 实现 • 集成了控制面和数据面 • 提供灵活的插件机制 • 动态上游、动态路由、插件热加载 快速的成长 • 6 月 6 号开源 • 7 月被纳入 CNCF0 码力 | 24 页 | 1.36 MB | 1 年前3
共 10 条
- 1













