我有8 gb的文件在服务器上,我想从这个文件下载1.5 gb使用http多范围请求。我使用curl。
除了第一个请求之外,所有的请求都均匀分布在文件上,第一个请求的大小为500mb (总共有161个请求)。
我发现,这个大范围的第一个请求的下载时间约为40秒,总时间约为560秒。这意味着,我下载500mb的时间为40秒,下载1 1gb的时间为520秒。因此,对于均匀分布的请求,我有6倍的速度减慢。我还注意到,当这种均匀分布的请求执行时,下载速率下降了大约6-8倍。
我不明白为什么会发生这种事。每个请求中的范围都是按偏移量递增排序的,所以我不明白为什么我们会变得如此慢。你能解释一下,是什么造成了这样的混乱吗?此外,我如何提高这类请求集的性能?
如果需要,我可以提供一组请求和时间。
发布于 2015-12-29 23:03:08
您没有给我们太多的工作,但您可能需要检查/考虑以下几点:
,这一点尤其正确
多个range请求的理由是什么?你确定下载整个文件不会更快/更简单吗(可能还会在客户端做一些后处理)?
https://stackoverflow.com/questions/34513292
复制相似问题