大咖直播-鸿蒙原生开发与智能提效实战!>>> 了解详情
写点什么

亚马逊 API 网关支持新的动态路由规则

  • 2025-06-17
    北京
  • 本文字数:1396 字

    阅读完需:约 5 分钟

大小:699.20K时长:03:58
亚马逊API网关支持新的动态路由规则

亚马逊云科技最近为 Amazon API Gateway 推出了一项新功能,支持为自定义域名配置动态路由规则,允许用户根据 HTTP 请求头的值(单独使用或与 URL 路径结合)来路由 API 请求。

此前,依赖 API Gateway 进行动态路由的开发人员通常会使用不同的 URL 路径(例如 /v1/products/v2/products)来分段流量。尽管这种方法能够实现需要的功能,但往往会带来复杂的 URL 结构以及 API 端点数量的增加。然而,借助新的动态路由规则功能,用户可以直接在自定义域名设置中进行路由决策,通过简单配置自定义域名,即可基于传入的 HTTP 请求头、基础路径或两者的组合来做出路由决策。


此外,借助这一功能,用户无需更改或创建新的路径即可完成 API 版本之间的过渡,为 API 版本管理A/B 测试 提供了更顺畅的路径。此外,它还支持基于主机名、租户 ID 甚至 Cookie 值等标准的动态后端选择,无需额外的代理层即可实现对 API 流量的精细控制。


(来源:AWS Compute 博客文章)


本质上,API Gateway 路由规则是一种与自定义域名绑定的特定资源,用于定义如何转发传入的请求。每条规则由三个关键属性组成:条件(Conditions),最多可基于两个请求头和一个基础路径值来指定匹配标准(支持通配符,可实现灵活匹配,同时满足所有条件);动作(Actions),定义匹配时要调用的 API 阶段;以及优先级(Priority),决定规则的评估顺序。例如,请求头条件(如 x-version)可以使用通配符(如 *v2*)来匹配 x-version=alpha-v2-latestx-version=beta-v2-test,从而实现复杂的路由策略。


在创建路由规则之前,用户需要至少有一个 API、一个阶段和一个自定义域名。共有三种路由模式可供选择:“仅 API 映射”(API mappings only),仅使用基础路径映射,不使用路由规则;“路由规则优先,然后是 API 映射”(Routing rules then API mappings),路由规则优先,未匹配的请求回退到基础路径映射;以及“仅路由规则”(Routing rules only),这是推荐的模式,完全依赖于路由规则,适合新域名或从 API 映射过渡后使用。在切换到生产环境之前,建议始终在非生产环境中测试新配置,因为已有的映射将被覆盖。


尽管其他主要云 API 管理平台(如 Azure API ManagementGoogle Apigee)也提供了用于 API 版本管理和 A/B 测试的动态路由功能,但它们的实现通常依赖于策略表达式或代理级配置。Amazon API Gateway 通过在自定义域名级别直接提供专用的声明式路由规则资源,极大地简化了这些特定路由场景的配置流程。


此外,API Gateway 的访问日志为请求处理提供了高度的可见性。每个请求都包含了上下文变量,例如 $context.customDomain.routingRuleIdMatched 用于指示匹配的规则。其他变量(如 $context.domainName$context.apiId$context.stage)提供了完整的路由上下文信息。用户可以通过分析这些详细的日志验证路由行为、排查问题,并深入了解不同 API 版本或测试变体之间的流量模式。


Medium 的一篇博文中,软件工程师 Paul Issack Minoltan 总结道:


本质上,API Gateway 新引入的路由规则使你能够将复杂的路由逻辑直接嵌入到 API Gateway 配置中,简化了架构,并提供提供更强大的对 API 流量导向的控制能力。


更多详细信息可以在服务文档中找到,该功能的端到端示例可在 GitHub 上找到。


【声明:本文由 InfoQ 翻译,未经许可禁止转载。】


查看英文原文https://www.infoq.com/news/2025/06/aws-api-gateway-dynamic-routing/

2025-06-17 15:006306

评论

发布
暂无评论
发现更多内容

技术分享| 音视频多频道使用的正确姿势

anyRTC开发者

音视频 WebRTC 实时通信 多频道

直播预告 | Apache APISIX × Apache SkyWalking 线上分享

API7.ai 技术团队

Apache Skywalking API网关 APISIX Meetup

百度智能云大数据全景架构图如何赋能企业数字化

百度开发者中心

大数据 案例分享 行业创新

小红书“致歉滤镜景点”:种草社区的尺度在哪?

石头IT视角

数字货币交易所系统软件开发介绍(案例)

Cloud Studio 邀您互动,好礼送不停 | CIF 活动邀请

CODING DevOps

自动化部署 Cloud Studio 开发标准化 可视化编辑 多人协同

网易云信的音频共享技术 | 体验共享专题

网易云信

音频技术

人生成长密码:高效能人士的7个习惯

dinstone

FastDFS环境搭建

Fox爱分享

fastdfs

字节半天*3面/5天拿offer,全凭自身硬实力和这份Java面试笔记

Java 编程 程序员 架构 面试

k8s集群安装经历

追风少年

k8s kubenetes

存储大师班 | 浅谈数据保护之快照与备份

QingStor分布式存储

分布式存储 快照 备份

数字货币交易所系统软件开发介绍(源码)

第 20 章 -《Linux 一学就会》- 条件测试语句和if流程控制语句的使用

学神来啦

Linux linux运维 linux云计算 linux一学就会

三级等保是不是icp?两者是一样吗?

行云管家

网络安全 等级保护 等保三级 三级等保

Golang fasthttp实践

FunTester

golang Fasthttp 接口测试 测试框架 FunTester

飞桨联邦学习框架PaddleFL新升级,实现纯两方安全计算协议

百度开发者中心

最佳实践 百度飞桨 版本升级

架构实战营-模块一作业

随风King

「架构实战营」

研究表明到2025年多接入边缘云市场规模将稳步增长

云计算运维

架构训练营模块一作业

Beyond Ryan

架构实战营

分布式文件系统FastDFS实战

Fox爱分享

fastdfs 分布式文件系统

21 张图 | 带你领略集合的 线程不安全

Java 架构 面试 线程 后端

优酷鸿蒙开发实践|优酷 Android 与HarmonyOS Hap 混合打包

阿里巴巴终端技术

android 鸿蒙 客户端开发 HarmonyOS 优酷

数字货币交易所系统APP开发(源码搭建)

数字货币交易所系统APP开发源码搭建

数字货币交易所软件系统开发简介(搭建)

一文读懂「TTS语音合成技术」

澳鹏Appen

人工智能 语音 nlp 语音合成 TTS

一看就懂|焱融 SaaS 数据服务平台上手指南

焱融科技

云计算 技术 分布式 高性能 文件存储

《世界质量报告》重磅发布,人工智能与机器学习成软件质量保证测试焦点

IP地址溯源 从源头遏制计算机恶意程序感染

郑州埃文科技

网络安全 ipv6 IP地址 木马病毒

现成数字货币交易所源码系统开发

亚马逊API网关支持新的动态路由规则_架构_Steef-Jan Wiggers_InfoQ精选文章