【发布时间】:2018-05-17 09:22:40
【问题描述】:
我正在阅读和观看有关 aws lambda、s3 和 CloudFront(CF) 的视频。我想在这里确认一下,我了解(或不了解)aws cloudfront 和更一般的 CDN 的概念。
目标:我想通过 CF 从我的应用中提供图像。我打算部署 aws lambda 函数。在我描述的场景中 - 我的 lambda 函数是简单的烧瓶应用程序,可能只有一个端点。实现图像上传的 POST 端点(从文件创建校验和,检查文件校验和是否已经在 s3 中 - 保存或不保存并返回图像)。图像调整大小,仅在通过查询字符串提供其参数时运行。所有图像都将被存储(原始、调整大小、旋转等)。 S3 是 CF 的起源。
部署:当我使用 python - 我想使用 zappa 作为部署工具。
示例问题:
8:00: 用户正在从澳大利亚上传图片。图像之前不存在,因此将其保存到 S3 并返回。
9:00 同一用户要求提供图像的缩略图。图像被调整大小并返回。这里我假设图片调整大小的请求(例如https://app.org/resize/image1.jpeg?width=80&height=80)与响应(image.jpg 80x80)一起保存在cloudfront的澳大利亚边缘节点上。
10:00 用户请求具有相同查询字符串的相同缩略图 - 他从澳大利亚云端边缘缓存获取 image.jpg 80x80。
我做对了吗?
【问题讨论】:
标签: python amazon-s3 aws-lambda amazon-cloudfront zappa