AWS Global Accelerator

通过 AWS 全球网络将流量路由到最优端点,提升应用可用性和性能的服务

概述

AWS Global Accelerator 是一项网络服务,通过全球各地边缘站点的 Anycast IP 地址接收流量,经由 AWS 全球骨干网络路由到最优区域的端点。避免公共互联网的路由变动和丢包影响,可将延迟改善最高 60%。持续执行端点健康检查,故障检测时数十秒内故障转移到正常端点,大幅提升多区域架构的可用性。

Anycast IP 与全球骨干网络解决的网络课题

经由公共互联网的流量在穿越多个 ISP 的过程中会发生路由变动和丢包,导致延迟不稳定。Global Accelerator 通过 Anycast IP 地址与 AWS 全球骨干网络的组合解决此问题。Anycast IP 在距用户最近的边缘站点接收,之后通过 AWS 管理的专用全球网络到达端点。公共互联网穿越区间最小化,特别是亚洲到北美、欧洲到亚洲等跨大陆通信的延迟改善效果显著。分配 2 个固定 Anycast IP 地址,无需等待 DNS TTL 传播即可即时反映端点切换,这是 DNS 路由所不具备的优势。

与 CloudFront 的区分使用及多区域设计

Global Accelerator 和 CloudFront 都利用 AWS 边缘网络,但用途明确不同。CloudFront 是专注于 HTTP/HTTPS 内容缓存和分发的 CDN,主要目的是通过缓存静态资源和 API 响应降低延迟。而 Global Accelerator 不依赖协议,优化 TCP/UDP 流量,适用于游戏服务器、VoIP、IoT 设备的 MQTT 通信等缓存无效的实时通信。多区域架构中,可在 Global Accelerator 的端点组注册各区域的 ALB 或 NLB,通过流量拨号调整权重。故障转移基于健康检查自动执行,无需等待 DNS TTL 传播,切换时间比 Route 53 故障转移路由更短。Azure 中 Azure Front Door 提供类似功能,但 Front Door 限于 HTTP/HTTPS,而 Global Accelerator 在 TCP/UDP 层面工作。网络设计相关书籍 (Amazon) 系统解析了全球分布式架构的设计模式。

导入判断的费效比思考

Global Accelerator 的费用由固定时间计费 (每 Accelerator 约 0.025 USD/小时) 和基于数据传输量的按量计费 (DT Premium Fee) 两部分组成。仅运行 1 个 Accelerator 每月即产生约 18 USD,流量较少的小规模服务可能不划算。应考虑导入的场景包括:拥有全球分布用户群且延迟直接影响 KPI 的服务、多区域高可用性为必须要求的关键任务系统、或基于 DNS 的故障转移切换时间不可接受的工作负载。反之,用户集中在单一区域、或 CloudFront 缓存已能充分改善延迟时,无需额外添加 Global Accelerator。实务中稳妥的做法是先通过 CloudWatch 的 Global Accelerator 指标测量改善效果,定量评估延迟改善幅度是否值得成本后再决定生产导入。

共有するXB!