使用cdn加速oss,访问cdn域名的视频URL特别慢-阿里云开发者社区

开发者社区> hpy> 正文

使用cdn加速oss,访问cdn域名的视频URL特别慢

简介:
+关注继续查看

现象 使用cdn加速oss,视频存放在oss上,cdn域名开启了range回源,访问视频url打开特别慢


原因 视频meta信息在视频尾部,浏览器通常会发先发range(0-)请求在头部看不到meta信息,会中断请求再发个range请求获取视频尾部的字节信息,由于cdn域名开启了range回源,cdn会认为第一次range请求包含第二个,会把两个请求合并等第一range请求响应完毕才会处理第二个,这样获取视频尾部字节的range请求就会堵塞在那等第一个range请求导致打开响应时间非常长


分析


访问视频url时,首先cdn会响应200如下图

ff925c40dee52c3a5879db4a512314bcdfa6d7c5


浏览器要播放视频,需要知道meta信息才会播放,所以浏览器会首先发个range请求去获取meta信息,range范围是“0-“,如下图

9abf76b13fd7b91016a36396c500f50c399dd105


浏览器在获取部分字节后发现视频头部没有meta信息,这时候会中断请求,从下图可以看到获取了51KB左右中断了,重新发个range获取视频尾部一段字节来得到meta信息

0bf79dbe7dfe468367ab4d8a51627f9e9d476d2e

由于cdn开通了range回源,cdn会合并回源请求,步骤1的请求已经包含这些range字节,所以cdn会等步骤1响应完后才会处理步骤2的range尾部内容请求,可以发现这个range请求处理30多s还是没有响应,浏览器又多次发range请求获取文件尾部信息,如下图获取多次都没有响应,都在等步骤1cdn回源oss的响应

0fbd595e582af9aba03632d966e31fcd063a4b14


3 步骤1响应完毕后,获取尾部的range请求才会响应,如下这个截图,响应成功,可以看到浏览器获取1M左右内容

ac39a97ef0932faa8ab7f2b6c3cbb46a7ca7e3f22d741b8ed065adce46ed44655b442ad88af13bd0


如下截图可以看到浏览器在播放视频之前获取meta信息的两个请求,先读头部信息拉取51KB左右发现没有meta信息中断请求,再发range请求获取尾部信息,中间发起多个range请求都没有响应,最后响应可以看到拉取了1M左右大小获取到meta信息


de8fadaef147634bfa606398d0b21785f36f2b2f

获取到视频meta信息才开始播放,可以看到播放range48-408404477meta信息一般都是48字节

ca18520ed117602c4ac5b6ced674b8cd1ac45960


解决方案

1 关闭range回源,这样每次range请求都直接透传给oss,oss不会合并range请求会直接响应,不过这样会影响range回源效率,建议方案2


2 使用媒体转码服务把视频转码,转码成标准视频格式,meta信息在视频头部就好了



版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
通过配置Windows 防火墙允许使用TCP/IP协议远程访问数据库
原文: 通过配置Windows 防火墙允许使用TCP/IP协议远程访问数据库 本文适用于:2005、2008、2008R2所有版本 为了可以通过TCP/IP协议远程访问SQLServer数据库,需要做以下几点: 在SQLServer所运行的服务器上,我们必须找到SQLServer所侦听的端口然后添加到WIndows防火墙的【允许入站】中。
1099 0
使用Nginx反向代理和proxy_cache缓存搭建CDN服务器加快Web访问速度
碰到问题:移动用户访问web服务器www.osyunwei.com很慢解决办法:1、在移动机房放置一台nginx反向代理服务器2、通过域名DNS智能解析,所有移动用户访问www.osyunwei.com时解析到nginx反向代理服务器3、nginx反向代理服务器与web服务器之间采用专线连接系统运维  www.
1632 0
在 kubernetes 中用 alluxio 加速 spark 数据访问
Alluxio是一个开源的基于内存的分布式存储系统,适合作为云上大数据和AI / ML的数据编排方案。本文主要为大家讲解如何用alluxio加速spark数据访问。
285 0
最佳实践:使用阿里云CDN加速OSS访问
用户直接访问OSS资源,访问速度会受到OSS的下行带宽以及Bucket地域的限制。如果通过CDN来访问OSS资源,带宽上限更高,并且可以将OSS的资源缓存至就近的CDN节点,通过CDN节点进行分发,访问速度更快,且费用更低。如果采用动静分离的网站架构,就能够解决海量用户访问的性能瓶颈问题。
940 0
阿里云RDS PG 10 HA版 - 使用postgres_fdw外部表插件 - 实例内跨库访问其他库的表
标签 PostgreSQL , postgres_fdw , 阿里云 , 内核安全限制 背景 阿里云rds pg内核安全上做了限制,只能访问当前实例的其他库,所以使用dblink, postgres_fdw时,虽然PG功能上是可以访问其他远程实例的,但是阿里云RDS PG限制了只能访问当前实例。 另一方面,当前实例是HA版本,并且是云化版本,所以IP,PORT都可能在发生迁移、切换后发
305 0
域名解析后网站还不可以访问解决步骤
记录一下域名解析问题: 今天发现http://apper.site可以访问,但是http://www.apper.site却不可以访问,查看域名已经设置了解析,多次删除重新解析无效!后来发现是主机没有绑定www域名,于是做主机绑定www域名操作!
7251 0
【最佳实践】CDN访问慢的分析思路和优化方案
使用CDN加速以后还是存在访问慢的情况,如何去分析定位问题、优化网站速度、解决用户问题是一个十分重要的课题。本文介绍了CDN加速访问慢的分析思路,通过归纳的一些原因结合搜集的信息去进一步判断定位问题,帮助用户在遇到问题时有一个更清晰的思考方法论。
1839 0
go语言使用代理ip来访问
go语言使用代理ip
10261 0
+关注
hpy
1
文章
33
问答
文章排行榜
最热
最新
相关电子书
更多
《2021云上架构与运维峰会演讲合集》
立即下载
《零基础CSS入门教程》
立即下载
《零基础HTML入门教程》
立即下载