CloudFront 如何将流量传递给 AWS 工作负载

发布: (2026年3月2日 GMT+8 18:11)
5 分钟阅读
原文: Dev.to

Source: Dev.to

概述

在 AWS 上的流量交付通常从边缘开始,向内部的应用资源推进。在许多架构中,Amazon CloudFront 充当入口点,在客户端请求到达您的 VPC 之前先进行处理。了解 CloudFront 如何连接后端服务以及网络在这一路径中扮演的角色,对于设计稳健的部署至关重要。

源类型及其网络影响

CloudFront 是一个运行在您 VPC 之外的全球内容分发网络。用户的请求在边缘位置被接收,然后在需要时转发到源。源可以是:

  • 对象存储(例如 Amazon S3) – CloudFront 从区域端点获取内容并在边缘进行缓存。这种模式非常适合静态资产,且无需计算资源来处理交付流量。
  • 负载均衡器 – CloudFront 将请求转发到负载均衡器,后者再将流量分发到后端服务,如 EC2 实例或基于容器的工作负载。
  • 其他 AWS 托管端点 – 包括 API Gateway、AWS Lambda@Edge 等。

关键点在于,CloudFront 永远不会直接将流量转发到私有实例;始终会有一个 CloudFront 能够访问的中间源端点。

基于负载均衡器的架构

使用负载均衡器作为源时:

  1. CloudFront 将请求转发到 面向公网的负载均衡器端点
  2. 负载均衡器应用路由逻辑,将流量发送到私有子网内的后端服务。
  3. 入站访问在多个层面受到控制:
    • 安全组 限制哪些来源可以访问源。
    • 应用路由 决定流量进入 VPC 后的处理方式。
    • 通常会显式允许 CloudFront 的 IP 范围,以限制暴露面并保持访问路径可预测。

将 CloudFront 保持在 VPC 之外可以简化扩展和安全性。边缘层能够吸收流量高峰、缓存响应,并在请求到达您网络之前提供防护。

网络视角

从网络角度来看,这种分离使 VPC 设计保持一致:

  • 子网、路由表和网关的行为在流量来源于 CloudFront 还是其他外部客户端时都是相同的。
  • 差异在于流量在到达之前是如何被过滤和控制的。

CloudFront VPC 源

最近,AWS 推出了 CloudFront VPC 源。借助此功能,CloudFront 可以私密地连接位于私有子网中的资源,而无需将它们暴露在公共互联网。

“Dengan CloudFront VPC Origins, CloudFront dapat terhubung secara privat ke sumber yang berada di subnet privat tanpa perlu mengeksposnya ke internet publik.”
(使用 CloudFront VPC 源,CloudFront 能够私密地连接位于私有子网的资源,而无需将其暴露到公共互联网。)

在此模型中:

  • CloudFront 仍然运行在 VPC 之外,但它使用 AWS 托管的连接方式将流量转发到选定的私有资源。
  • 这降低了对面向互联网的源的需求,并帮助对敏感工作负载实施更严格的访问控制。
  • VPC 源并不改变 CloudFront 作为边缘服务的角色;它们只是为后端连接提供了更多灵活性,尤其适用于优先使用私有访问路径的架构。

结论

CloudFront 在 AWS 网络中扮演着独特的角色:负责边缘交付,同时依赖明确的源路径进入 VPC。无论流量是通过公共端点还是通过新式的 VPC 源集成进行传输,其底层原则保持不变:

  • CloudFront 将请求交付到受控的入口点。
  • VPC 决定随后会发生什么。

后续文章将更深入探讨 CloudFront VPC 源,并将其与传统的公共源设计在 AWS 架构中的使用进行对比。

0 浏览
Back to Blog

相关文章

阅读更多 »

当工作成为心理健康风险时

markdown !Ravi Mishrahttps://media2.dev.to/dynamic/image/width=50,height=50,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fu...