把用户的每一次点击稳稳接住:阿里云应用交付网络方案选型实操指南
一次完整的请求要走多远?客户端 → DNS → 公网 → 加速节点 → 负载均衡 → 后端实例 → 微服务。中间任何一跳延迟高一点、连接挂一下,用户体感就是「App 卡了」「页面打不开」。
这篇就把阿里云上应用交付网络这条链路捋清楚——ECS、IDC、K8s 三类后端各该怎么打,NLB / ALB / GA / Ingress 各自的位置在哪里,安全和容灾要点别漏掉。
一、为什么要专门聊「应用交付网络」
服务端从单体 → 多线程 → 微服务,客户端从 PC 浏览器 → 几十屏 App,中间这条「客户端到服务的连接」越来越复杂。应用交付网络要解决两件事:
- 服务发现:客户端怎么找到对的 IP、对的端口、对的 URL
- 服务连通:找到之后,怎么把报文稳定、低延迟、安全地送达
这条链路对应到云上,就是一组「网络代理」产品的组合。本文聚焦互联网场景——服务端在阿里云或 IDC、通过阿里云接入公网、让全球用户能流畅访问。
二、按后端类型选方案:三张图看完
后端是 ECS、IDC 服务器,还是 K8s Pod,决定了你该挂谁。先记住一张总表:
| 后端类型 | 4 层入口(TCP/UDP) | 7 层入口(HTTP/HTTPS/gRPC) | 复杂 7 层(自研/定制) |
|---|---|---|---|
| ECS | NLB 挂 ECS | ALB 挂 ECS | NLB + 自建 7 层代理 |
| IDC 服务器(通过阿里云出公网) | NLB 直挂 IDC | ALB 直挂 IDC | NLB + 7 层代理(云上或 IDC 侧) |
| 容器 Pod (ACK) | NLB 做 LoadBalancer Service | ALB Ingress 直接对外 | NLB + Nginx/MSE Ingress |
下面分场景展开三个关键设计点。
三、ECS 后端:常规但要避坑的几个细节
典型组合
- 简单 Web 服务 → ALB 挂 ECS,走 7 层 URL 路由,省心
- 高并发 / IoT / 游戏类 4 层入口 → NLB 挂 ECS,直接吃 EIP
- 7 层有强定制需求(自研 OpenResty、APISIX 等)→ NLB + 自建 7 层代理
位置怎么放
- Region:尽量和 ECS 同地域;如果业务需要贴近某海外客户端做加速、或跨地域容灾,再考虑跨地域
- 可用区:多可用区双活(ALB/NLB 默认主主),并尽量和 ECS 同可用区,能拿到最短转发时延
- 访问入口:用 SLB 自带的域名,不要用单 VIP 写死——可用区故障时 DNS 会自动摘除故障 VIP,自带容灾
和后端怎么连
- 优先同 VPC;跨 VPC / 跨地域时用转发路由器 TR 打通私网路由
- 别忘了安全组 + NACL + DDoS/WAF 这三件套兜在公网入口前
四、IDC 后端:源 IP 透传是大坑
IDC 服务器通过阿里云出公网,整体形态和 ECS 类似,但有几个隐藏细节:
| 场景 | 选择 | 注意点 |
|---|---|---|
| 4 层 TCP/UDP 直通 | NLB 直挂 IDC 服务器 | 源 IP 不能透传,需要走 Proxy Protocol 或 TOA 携带 |
| 7 层 URL 路由 | ALB 直挂 IDC 服务器 | 源 IP 通过 HTTP XFF 头携带 |
| 复杂 7 层 | NLB + 自建 7 层代理(云上或 IDC 侧均可) | 代理位置决定了源 IP 传递方式 |
经验:很多排查问题都卡在「日志里看到的客户端 IP 是负载均衡的内网 IP」——开 Proxy Protocol 或 XFF 是第一步,应用层日志要相应改字段。
五、容器 Pod:四种 Ingress 怎么选
ACK 集群对外暴露服务有四套主流玩法:
| 方案 | 谁来纳管 | 适合什么 |
|---|---|---|
| NLB + LoadBalancer Service | ACK 的 CCM 自动管 NLB | 4 层入口,IoT / 游戏 / 长连接最常用 |
| ALB Ingress(推荐 7 层默认值) | ALB-Ingress-Controller + AlbConfig CRD | 全托管、自动弹性、免运维,云原生 7 层首选 |
| NLB + 自建 Nginx Ingress | Nginx-Ingress-Controller 创建 LB Service | 定制化强、技术栈深的团队,社区扩展生态大 |
| NLB + MSE Ingress | MSE-Ingress-Controller 创建 LB Service | 想要复杂 Ingress 功能(限流、灰度、安全等)又不愿自运维 |
几个常被踩的坑
- ALB Ingress 不需要再单独建 LoadBalancer Service,它自带南北入口
- NLB / ALB 都有配额上限,量大集群上线前查一下「产品性能及使用限制」
- 在 K8s 里用 Annotation / AlbConfig 定义,把声明式留在集群内,比手工配 SLB 更易回滚
六、客户端到 SLB 这段——别忘了广域网加速
负载均衡只解决「请求进入阿里云之后」的转发。进来之前的公网质量——丢包、抖动、跨境时延——是另一段战场。
全球加速 GA 的工作方式: 在离客户端近的「上车点」部署反向代理 → 把客户端流量吸入阿里云骨干网(专线互联:丢包少、抖动小、时延低)→ 回到源站,同时对 TCP/HTTP 协议自动调优。
接入推荐 CNAME 方式:把业务域名 CNAME 到 GA 的加速域名,自带地域智能解析 + 加速 IP 不可达时自动摘除。
跨境业务(一端在中国内地、一端在海外)有两种通道:
- 精品带宽:默认通道,BGP 精品线路
- 联通跨境专线:效果更好,但需要申请跨境业务合规认证,且源站域名要在中国内地有 ICP 备案
容灾设计:同业务多地域源站时,用「多地域终端节点组 + 优先级 + 流量百分比 + 健康检查」组合,实现主备 / 负载分担 / 就近覆盖 / 跨地域平滑迁移。
别漏的安全三件套:访问控制 ACL、DDoS 基础防护(默认开)、WAF(GA 与源站之间串入)。
七、SLB 选型对照表(实操速查)
| 维度 | CLB(传统型) | ALB(应用型 7 层) | NLB(网络型 4 层) |
|---|---|---|---|
| 代际 | 第一代,功能停演进 | 第二代,7 层应用交付 | 第二代,4 层应用交付 |
| 协议 | TCP/UDP/HTTP/HTTPS | HTTP/HTTPS/QUIC | TCP/UDP/TCP SSL |
| 架构 | 物理机 | NFV 弹性伸缩 | NFV 弹性伸缩 |
| 单实例性能 | 100 万并发 / 5 万 QPS / 5 G 带宽 | 100 万 QPS / 100 G | 1 亿并发 / 100 G |
| 可挂载 | ECS/ENI/ECI | ECS/ENI/ECI/私网 IP/FC | ECS/ENI/ECI/私网 IP |
| SLA | 99.95% 主备 | 99.995% 主主 | 99.995% 主主 |
| 典型场景 | 同地高可靠、同城双活 | 互联网 7 层、音视频、云原生灰度蓝绿 | 高并发 4 层入口、IoT、IDC 出入口 |
一句话原则:新业务别再选 CLB,4 层走 NLB、7 层走 ALB。
八、Ingress 选型对照表:自研 vs 全托管
| 维度 | Nginx Ingress | ALB Ingress |
|---|---|---|
| 定位 | 自有组件、自行运维、可深度定制 | 全托管、自动弹性、免运维 |
| 性能 | 依赖手动调参,需配副本与资源限制 | 单实例 100 万 QPS / 千万级连接,默认 SSL 硬件加速 |
| 配置变更 | 证书变更需 Reload,对长连接有损 | OpenAPI 动态下发,热配置无损长连接 |
| 协议 | HTTP/HTTPS | HTTP/HTTPS/QUIC/WebSocket/WSS/gRPC |
| 灰度发布 | 金丝雀、蓝绿 | 金丝雀、蓝绿 + 路由优先级、双向规则 |
| 成本 | 自占 Pod 资源 + 额外 LB | 兼做 LoadBalancer,省一个 LB + 省 Pod |
怎么选:技术栈深、要插件生态、要定制 Lua 逻辑 → Nginx;要稳定 / 大流量 / 少运维 / 走云原生默认 → ALB Ingress。
九、最后总结:一张「选型决策树」装进脑里
- 后端是谁?ECS / IDC / Pod → 决定挂载方式
- 协议层级?4 层 → NLB;7 层 → ALB;复杂自研 → NLB + 自建代理
- 客户端在哪?远端用户多 → 叠加 GA 全球加速;跨境业务 → 选好精品带宽 / 联通专线
- 可用区策略?永远多可用区,永远用域名而不是 VIP 入口
- 源 IP 透传?IDC 直挂记得开 Proxy Protocol / TOA / XFF
- 安全兜底?安全组 + NACL + DDoS + WAF,能上的都上
把这六步内化成肌肉记忆,下次设计应用交付链路就不会漏掉关键决策点。
关键云网络产品速查
- CLB(传统型负载均衡)——第一代 SLB,已停止功能演进,新业务不推荐
- ALB(应用型负载均衡)——第二代 7 层负载均衡,100 万 QPS / 100 G 带宽,云原生 Ingress 首选
- NLB(网络型负载均衡)——第二代 4 层负载均衡,1 亿并发 / 100 G 带宽,IoT / 游戏 / IDC 出入口
- GA(全球加速)——基于阿里云全球骨干网的反向代理加速,跨境通道、自动容灾
- ALB Ingress / Nginx Ingress / MSE Ingress——ACK 容器场景的 7 层入口三件套
- TR(转发路由器)——跨 VPC、跨地域的私网路由打通核心
- EIP / 共享带宽包——公网 IP 与公网带宽底座
- DDoS 防护 / WAF(Web 应用防火墙)——公网入口安全兜底
- DNS / 智能解析——容灾切换与地域智能调度
- NIS(网络智能服务)——公网质量观测,加速区域选型的参考依据
原文链接
本文基于阿里云官方帮助文档改写整理,原文(含完整产品参数与配额说明):
收藏原文,下次画架构图时直接对照查参数;遇到具体配置问题,建议直接到阿里云开发者社区或工单系统提问,工程师们都很热心。