我正在努力快速学习HDS和HLS直播的一些基础技术。
我在EC2中的Amazon WebServices实例上设置了Wowza Media服务器3.5,并通过CloudFront分发。我做了我的第一次直播活动,并且正在观察我的服务器负载越来越高。我想知道是否有人可以帮助我理解HDS / HLS直播(和nDVR ......)的一些基础:
以下是我的问题:如何为视频内容提供数据(这是我的理解,请让我直截了当!): - 当观众请求播放列表或主要节日文件时,他们会返回XML,将播放器指向一个视频/音频块(DVR应用程序实例中的m4fa和m4fv?)下一个需要播放的数据。由于此数据也通过端口80传递,因此它也被缓存。
如果上述陈述是正确的,那么以下内容对于HDS和HLS的优化是否有意义:
案例1:DVR服务: 我在CloudFront中设置了缓存规则,如下所示:
案例2:没有DVR服务(这是更好的优化方式吗?)
感谢您提供的任何见解!
答案 0 :(得分:2)
有没有办法为媒体配置不同的网站名称?对于DVR会话,您希望m3u8文件直接从您的服务器提供(无CF或2秒CF),但是通过CloudFront提供的媒体文件的到期时间非常长。
(对于非DVR会话,它可以全部通过CloudFront,因为它可以缓存。)
CloudFront的实用性取决于您拥有多少流行(和不受欢迎)的流。
例如,假设特定POP中有20个CloudFront框。如果有5个人查看流,则每个人都可能会遇到不同的CF框,无法获取缓存并且无论如何都需要访问您的服务器。在CloudFront停止访问您的服务器并从缓存中提供所有内容之前,您必须有50或70人从该POP查看流。由于有许多POP,您可以让100个人在全球范围内查看流,但每个人在不同的POP中点击不同的框,并且您的服务器仍然会收到100个请求。