Azure Verizon CDN上截断的大文件 - 请求设置是否超时?

时间:2017-05-25 15:30:43

标签: azure azure-storage-blobs azure-cdn

我将295437KB文件上传到Azure private Blob。我通过从Blob流式传输的应用服务连接Azure Verizon Premium CDN。返回的文件以不同的长度被截断,小于整个文件长度。几十MB的MB更短。 我已经检查了Blob上的文件大小(正确),还测试了从App Service检索它的调用(正确)。 所以它似乎是在CDN方面。我可以在CDN上设置一些超时或请求限制来缓解此问题吗?

以下是截断文件的CDN调用示例:

https://holojem-prod-files-cdn.azureedge.net/artifacts/11/283/332/0008%20Watch%20This%20Video.mp4?DYiNiOt7Q_9xGaZhscklXmcn0tlpDU649hQUD2n7WzgxfirhVQyzwch2-szLjDmUjAshEfe2ZsQ6ejEDR46QvHVKf5WneWFAz1vOQppOPfcBq3KCS11mZ3LpnfFGEzR9RtnsvKyvVSadMXuFy8cLPLYiy4S2boiJ0S-YhQdODqFY7_MbeiJB

这是CDN指向的基础API(我的): 如果我点击它,我会收到完整的视频。它是295,437 KB。

http://holojem-prod-cdn-api.azurewebsites.net/artifacts/11/283/332/0008%20Watch%20This%20Video.mp4?DYiNiOt7Q_9xGaZhscklXmcn0tlpDU649hQUD2n7WzgxfirhVQyzwch2-szLjDmUjAshEfe2ZsQ6ejEDR46QvHVKf5WneWFAz1vOQppOPfcBq3KCS11mZ3LpnfFGEzR9RtnsvKyvVSadMXuFy8cLPLYiy4S2boiJ0S-YhQdODqFY7_MbeiJB

有趣的是,结果并不一致。当我第二次直接从Postman点击原点时,我得到了一个260,276 KB的文件

当我从Chrome中的原点下载时,我第一次获得260,744,第二次获得262,144 KB。

原点是ASPNET核心Web API

1 个答案:

答案 0 :(得分:0)

根据您的CDN网址,我发现CDN在下载文件时压缩了文件。

您可以运行fiddler来捕获请求,如下所示:

根据此article:要检查您的文件是否被压缩返回,您需要使用Fiddler或浏览器的开发人员工具等工具。检查随缓存的CDN内容返回的HTTP响应标头。如果有一个名为Content-Encoding的标头,其值为gzip,bzip2或deflate,则会压缩您的内容。

所以我建议您首先检查天蓝色门户中的压缩设置。

更多细节,您可以参考此article

更新

根据你的两个网址,我已经下载了两个视频。我发现网站的大小比CDN的视频多一点。

结果如下:

enter image description here

我还使用mediainfo --fullscan来比较这两个文件之间的区别。

总体比特率不一样。

一个是17.7 Mbps,另一个是17.6 Mbps。有两分钟。

所以我猜你的网站可能有问题来获取blob流代码。我建议你重新检查它。如果你仍然面临同样的问题,我建议你发布一些相关的代码和blob视频网址,以便我们重现这个问题。