多线程下载技术不见得很好

时间: 2008-09-12 / 分类: 百家杂谈 / 浏览次数: 1,140 views / 0个评论 发表评论

[文章作者:叶歆昊   最后修改:2010-07-19   转载请注明原文链接:http://littz.com/multi-threaded-download-technology-is-not-necessarily-good.html]

下午尝试升级本站的Wordpress系统由2.6.1到2.6.2的时候,用从官方下载的2.6.2版升级后居然发现我的博客首页显示2.6.2版,但是管理页面确实2.5.1版,非常郁闷。仔细回想是哪出了问题,不太可能是官方提供的下载文件有问题,Wordpress中文社区反复强调,请使用单线程下载器下载,不用迅雷等工具,但我用的是Chrome浏览器下载,估计是Chrome浏览器自带的下载工具也是多线程的,换用Firefox下载,再次升级,问题解决!

多线程下载和迅雷的P2SP下载都是基于HTTP协议,以迅雷的P2SP下载为例,获取某个文件下载信息后,然后从迅雷的网址库里面搜索出其他与原始文件相同文件名、相同大小的文件,迅雷就分别从多个服务器,每个服务器都多线程下载这个文件,最后再拼合起来。粗略估计,网络上所有文件中 文件名和文件大小都相同的文件应该有90%以上 是完全一致的文件,但是仍有10%的文件虽然名字和大小一样,但是内容并不是一样的。所以迅雷的多线程搜索可能会搜索出文件名和大小一致但是内容不同的文件,导致下载完成拼合起来的完整文件出错,最容易出现的是版本问题。

而BT和eMule并不同于迅雷,BT和骡子都有着完善的MD5或CRC32或Hash机制,即一开始下载的文件头中就包含验校码,保证分割出的每一个小区域下载后都是准确的。

有些文件,尤其是源代码还是用Firefox的原生单线程下载比较好。

发表评论

您的昵称 *

您的邮箱 * (绝对保密)

您的网站