S3 + Cloudfront 中的媒体 download/upload

Media download/upload in S3 + Cloudfront

我有一个使用 angularJS 构建的前端,它与 Java 中的后端通信。

我已准备好所有代码,运行 可以将图像从 S3 上传和下载到我的应用程序。

我还可以访问 S3 中的视频并使用 videojs 库显示它们。

在性能方面,我已经阅读了一些有关 Amazon Cloudfront 的文章。我已经在我的代码中实现了 ETag 缓存,它运行良好。

但是,我下一步要集成这个 Cloudfront 是什么?我研究过的所有教程都只显示静态文件。我是否需要进行额外的代码更改,或者这只是我的 AWS 堆栈上的配置问题?我想要实现和学习的关键点之一是如何使视频流式传输而不是将它们完全下载到客户端。

CloudFront 是一个内容分发网络 (CDN)。您创建一个分配并告诉它哪个 S3 存储桶包含您要提供的文件。然后,如果您有域名,则可以添加 CNAME cdn.yourdomain.com 并将其映射到 CloudFront 提供给您的域。

访问 cdn.yourdomain.com/yourfile 的用户将有效地获取缓存版本,而不是从 S3 下载它。

您还可以创建用于流式传输的 RMTP 分发,它允许用户在下载视频时播放视频,并且它使用 Adob​​e Flash Media RMTP 协议,但要小心:据报道 hereCloudFront 将于 2020 年 12 月 31 日停止支持 RTMP 分配。