API 网关

2025年3月17日 | 阅读 3 分钟
  • API 网关是一个网关,它由一组 Lambda 函数组成,这些函数创建一个无服务器的学习管理系统。
  • API 网关是一种完全托管的服务,使开发人员可以轻松地以任何规模发布、维护、监控和保护 API。
  • 只需在 AWS 管理控制台中点击几下,您就可以创建一个 API,该 API 充当应用程序访问数据、业务逻辑或来自后端服务(例如在 Amazon Elastic Compute Cloud (Amazon EC2) 上运行的应用程序、在 AWS Lambda 上运行的代码或任何 Web 应用程序)的功能的“前门”。
  • 如果您的浏览器正在向 API 网关发出 API 调用,那么 API 网关会将这些调用路由到 Lambda。

API 网关的架构

API Gateway

假设我们有通过手机或笔记本电脑操作的用户向 API 网关发出 API 调用。API 网关触发 Lambda 函数或 EC2 中的函数。

什么是 API 缓存?

  • 在 Amazon API Gateway 中,您可以启用 API 缓存来缓存端点的响应。
  • API 缓存可以减少对端点的调用次数,并提高对 API 的请求的延迟。
  • 启用 API 缓存后,API Gateway 会将来自端点的响应缓存指定的时间-生存期(以秒为单位)。API Gateway 通过查找缓存中的响应来响应请求,而不是向端点发出请求。

API 缓存的架构

API Gateway

假设我们有用户向 API 网关发出 API 调用。 API 网关触发 Lambda 函数,然后 Lambda 函数将响应发送回 API 网关。现在,另一个用户来了并向 API 网关发出相同的 API 调用,然后我们打开缓存和生存时间 (TTL)。假设 TTL 为 60 秒。因此,响应在 API 网关中停留 60 秒。现在,要服务于另一个用户的请求,您无需调用 Lambda 函数,因为该请求的响应已被缓存。通过这种方式,我们可以从最终用户那里获得更快的响应。

API 网关的特性

API Gateway
  • 成本效益高
    它成本非常低且高效,因为 API 网关为 API 请求提供分层定价模式。每个百万次请求的 API 请求价格低至 1.51 美元,您还可以通过减少请求数量来降低成本。
  • 可扩展
    您无需担心 EC2 服务或自动伸缩组响应 API 请求。 API 网关会自动扩展。
  • 缓存和节流
    缓存是 API 网关最重要的特性。缓存用于缓存端点的响应,从而提高对 API 的请求的延迟。它也是决定服务价格的主要因素。
    您还可以防止 API 网关的安全风险。如果您想防止欺诈性 API 调用涌入 API 网关,您可以配置节流服务,该服务可以限制请求以防止攻击。
  • 灵活
    要实施 API 网关,您无需启动 EC2 实例或设置网关软件。API 网关可以在几分钟内通过 AWS 管理控制台实施。
  • CloudWatch 连接
    Amazon API Gateway 与 CloudWatch 服务集成,CloudWatch 服务是一种监控服务。此工具用于监控传入 API 调用、延迟和错误的指标。
  • 安全性
    您可以授权访问您的 API。API 网关用于通过执行各种授权选项(例如 Lambda 函数和身份访问管理服务 (IAM))来验证传入请求。IAM 与网关集成,提供诸如 AWS 凭证(即访问密钥和秘密密钥)等工具来访问 API。Lambda 函数用于验证令牌,如果令牌成功验证,则将授予对 API 的访问权限。

下一个主题Kinesis