2017-07-19 21 views
0

我曾计划使用AWS API网关以实现三个目的。所有这些端点都使用自定义域名进行配置,使用AWS颁发的SSL证书,并且我配置CNAME记录以匹配可能的前端URL。针对视频流失败的AWS API网关...需要重新实施设计的建议

  1. api.my-domain.com(REST API调用返回JSON数据)(如预期工作)
  2. images.my-domain.com(代理通过二值图像数据的从S3) - 工作如预期。
  3. videos.my-domain.com(DOH!...)

不幸的是处理视频我碰到的几个问题。较小的视频开始工作,但后来产生一个错误。但是..这不是主要问题。

API集成端点的响应数据有10MB的最大有效负载大小,所以我必须为视频提供另一种解决方案。

我不想托管这些图像或通过非常前卫的视频。我想在所有端点上使用相同的AWS问题通配符证书* .my-domain.com。我想为图像请求使用API​​网关,因为图像很小,并且不会超出限制,我可以将它们缓存在api级别。

一个CNAME指向我的视频S3存储区工作,但不能使用相同的SSL证书,并且我希望所有流量都来自API网关,并且没有直接请求存储区端点的请求。

```

那么..我有什么选择?

看来我的最佳选择是将MP4视频转码为HLS,并通过云端托管S3存储桶。我并不是真的想要使用cloudfont,但我没有看到任何更好的选择,因为我想要的设计。

最近的视频会偶尔观看,而不是高要求,老的视频很少被观看,因此将它们托管在云端看起来像是浪费。

+0

看起来我会尝试Vimeo Pro ... – eztinkerdreams

+0

CloudFront + S3通常不比S3单独更昂贵。对于大型对象,通常其成本略低*,因为CloudFront拥有更好的带宽定价,使用CloudFront时S3带宽免费。 –

+0

哦!很高兴知道,我不知道免费的S3带宽!它是否在视频被请求之前将视频移动到边缘位置,或者只有当视频被HLS编码时才将视频移动到边缘位置? – eztinkerdreams

回答

0

AWS中的视频流的典型设置是通过AWS CloudFront RTMP Distribution流式传输存储在S3中的视频。

+0

是的,谢谢...正如前面提到的,我并不真正需要或希望在这个用例中使用cloudfront发布。视频需要可用,但很少被访问 – eztinkerdreams

0

继续使用CloudFront从S3存储桶托管的内容来了解​​它的工作原理。

我整体选择CloudFront的原因是与其他AWS服务的紧密集成,以及完全控制S3存储桶中资产的路径/名称的能力,而使用Vimeo则没有很好的控制超过资产的名称。