“下载速度变慢、卡99%、电脑变卡”竟然是因为它!

2019年01月11日 10:26| 1,779,608 次浏览| 发布者 强伊文| 696 评论

前言:

随着我国民用光纤宽带的普及,大家使用的网络带宽也越来越大。曾经以为家里有100M的宽带已经快上天了!但是现在许多雷友家里用上了500M~1000M的宽带也并不稀奇。

可是在更大的带宽给我们带来更快下载速度的同时,也给下载带来了新的问题:许多电脑的”磁盘读写性能”跟不上了,尤其是使用机械硬盘的电脑!

当下载速度非常快的时候,使用机械硬盘的电脑更容易因为磁盘过于繁忙发生下列问题:

  • 下载速度突然变慢
  • 电脑响应变慢
  • 下载进度卡在99.9%

当这些问题发生时,您只需要耐心等待磁盘完成数据写入即可。

但是这到底是怎么回事呢?

下载速度突然变慢:

当迅雷在下载文件时,为了避免频繁的往磁盘中写入数据,引发磁盘读写性能下降。因此迅雷的下载引擎会先将下载得到的数据保存到电脑的内存里。待积攒到足够多的数据后,再一起写入磁盘。这就是迅雷下载引擎的”磁盘缓存”功能。

“磁盘缓存”就像一个水池,下载数据就是在向池内注水,而将数据写入磁盘则是把水池内的水放掉。

一直以来,由于通过网络下载数据的速度比数据写入磁盘的速度慢,所以可以确保这个池子里的水不会溢出。但是假如池水溢出了,就会造成问题。体现在迅雷的下载引擎上,就会造成程序崩溃等异常。

近年来随着网络带宽的增加,已经开始出现下载数据的速度比数据写入磁盘速度更快的情况。

此时如果不对下载数据的速度做任何限制,水池里的水是注定要溢出的。

我们都不希望迅雷的下载引擎发生崩溃,因此当迅雷的下载引擎发现,磁盘缓存已经快要满出来的时候,就会自动降低下载数据的速度。让已下载的数据尽快写入磁盘,等腾出足够的缓存空间后,再恢复原来的下载速度。

如果你的电脑正在使用机械硬盘,并且在高速下载时,出现下载速度突然变慢的情况。很可能就是这个原因。

电脑响应变慢:

要深入了解这个问题,我们必须从”机械硬盘”的”先天缺陷”说起。让我们先看一张机械硬盘拆解图。

“机械硬盘”在进行数据读写操作时,上图中的”音圈马达”会转动”磁头摆臂”,使位于摆臂尖端的”磁头”在距离”磁盘”表面约1纳米的高度高速飞行,从而在”磁盘”上读写数据。

看似光洁如镜的磁盘表面,实际上是由环环相扣的”磁道”所组成的。当需要读写的数据存放在磁盘的不同”磁道”时,磁头摆臂会在磁盘上来回摆动,使”磁头”飞到存放对应数据的磁道上空,这个动作被称为”寻道”。

由于磁头摆臂是由音圈马达控制的纯机械结构,从发出指令,到摆臂完成寻道的响应时间约10毫秒。相比之下机械硬盘的磁头读写当前位置数据的时间,仅为寻道时间0.1%!因此频繁的寻道操作将会拖慢机械硬盘的响应速度。

这个”先天缺陷”造就了机械硬盘的一大特点【“随机读写”“顺序读写”慢很多】

比如顺序读写时,速度可能达到100MB/s,但是随机读写时,可能只有500KB/s,仅为顺序读写时的0.5%!

理想状态下,当迅雷正在高速下载数据时,机械硬盘会全力工作,努力将迅雷下载的数据写入磁盘中。但实际上电脑中并非只有迅雷一个软件在运行。包括操作系统在内的其它软件也会产生读写磁盘的需求。而其它软件要读写的磁盘数据,往往处于其它磁道上,这就会频繁的触发机械硬盘的”寻道”操作。

如此一来,机械硬盘就掉进了“随机读写”的泥潭中,不但会使迅雷写入数据的速度变慢,也会造成用户在操作电脑上的其他软件时,整体响应速度变慢。

下载进度卡在99.9%

许多雷友并不知道,迅雷其实会在下载数据的过程中,实时对下载到的数据进行校验,避免下载到错误数据。而校验数据的过程是需要一定时间才能完成的,好在大多数情况下,下载数据的速度比校验数据的速度慢。所以当数据下载完成时,校验数据的过程也能同时完成。下载任务就能顺利完成。

但是当网络下载数据的速度比校验数据的速度更快时,等待校验的数据就会产生积压。下载的文件越大,下载速度越快,积压的待校验数据就会越多。

此时如果再叠加上前面两个问题,校验积压数据的速度就会变得更慢了。

当一个下载任务的文件数据已经下载完成,但还积压了大量未经校验的数据时,迅雷的下载引擎就会让任务进度停留在99.9%,直至所有下载到的数据都校验通过后,才让任务下载完成。

所以当你观察到迅雷原本有很快的下载速度,却在任务进度达到99.9%时突然没了速度,同时迅雷上出现”磁盘繁忙”的提示,那么很可能就是这个原因。

不过需要说明的是,可能导致下载进度卡在99.9%的原因还有很多,这只是其中的一种原因。

结语:

大家了解到这些问题的成因之后,应该不难发现”机械硬盘”已经成为电脑整体性能的瓶颈。纵使你的电脑CPU再快,内存再大,网速再高。最终都会被”机械硬盘”所拖累。

好在近期固态硬盘的价格一直在下降,正在逐渐接近1元/G,性价比越来越突出,希望各位仍在使用机械硬盘的雷友,能够早日换上固态硬盘,就能大幅降低“磁盘繁忙”发生的几率!

补充说明:

注意到部分雷友将新版迅雷X上出现的“磁盘繁忙”提示,误解为新版本迅雷X做了某种限制,特此加以说明:

迅雷X是通过Windows的任务管理器获取的“磁盘活动时间”,通过这个参数可以准确的衡量磁盘的繁忙程度。

连续3秒磁盘活动时间超过90%,迅雷X就会提示磁盘繁忙。

您在使用以往版本的过程中也会遇到磁盘繁忙导致的问题,由于以往版本中缺乏说明,使您不一定能够察觉到问题发生。

迅雷X出现的“磁盘繁忙”提示,只是如实反映了磁盘的当前状态,并对可能发生的问题加以说明,并非新版迅雷X做了某种限制。

2019-4-19更新补充说明:

看了许多用户的评论,都提出了同一个问题“为什么迅雷比其它下载工具的磁盘性能占用更高?”

这是个很好的问题,尽管解释起来可能会稍微有点复杂。

首先,我们要知道,所有的数据传输过程都是不一定可靠的,为了确保数据接收方得到准确的数据,都会设计“数据校验”的机制。

因此所有的下载协议,包括但不限于“迅雷P2SP、BT、电驴”等等都有“数据校验”机制。

这些下载协议的数据校验过程都差不多,都是把每个文件分为N个文件块,然后计算出每块文件的特征值进行比较,每块文件的特征值一致,就认为接收到的数据是正确的,不一致就是错误的。读取文件计算特征值的过程就会占用磁盘性能。这是背景。

迅雷的下载速度之所以比其它下载工具更快,主要是因为迅雷实现了“多协议融合下载加速”,也就是说当你使用迅雷下载一个文件时,迅雷会同时通过“迅雷P2SP、BT、电驴”等多个下载协议,同时下载数据,从而获得比单一协议下载工具更快的下载速度。

这样做就相当于同时运行三个下载工具,去下载同一个文件。虽然下载速度更快了,但是也会因为需要同时校验三种下载协议的数据,使得磁盘性能占用大幅增加。

所以大家拿“浏览器下载、百度网盘、Steam、uTorrent”等等单一协议下载方式来跟迅雷做比较,是不合适的。

为什么迅雷限制不住上传速度?

2018年01月08日 19:04| 302,659 次浏览| 发布者 强伊文| 80 评论

自从伊文转行去做产品策划之后,好久没在阳台上写点什么了。恰逢临近年关手上的事情少了许多,就寻思着回到阳台再给大家写点有价值的东西。

就在刚才,伊文在微博上看到这么一条吐槽。

这位雷友将迅雷的上传速度限制为 33KB/s,但是左侧显示的“当前上传速度”为 213.44KB/s,于是他吐槽说“迅雷太坑人”。

Snipaste_2018-01-08_16-50-07

其实不少雷友,也对迅雷有着“限制不住上传”的传统印象,但实际上这是产品交互设计上的不足导致的误解。

为什么说是误解?

首先我们得从基础的下载原理说起。

我们都知道,下载是个接收信息的过程,而上传是个发送信息的过程。

如果做个拟人化的比喻,下载就是用耳朵听,上传则是用嘴巴说。

现在,假设A要给B念一句诗“苟利国家生死以”。

我们把A给B念这句诗的过程,想象成下载一个文件,这个过程是这样的。。。

A:“我要念诗了,你听到了吗?”

B:“我听到了,这句诗有几个字?”

A:“有7个字,你听到了吗?”

B:“我听到了,你念吧”

A:“第1个字 苟 你听到了吗?”

B:“我听到第1个字了”

A:“第2个字 利 你听到了吗?”

B:“我听到第2个字了”

A:“第3个字 国 你听到了吗?”

B:“我听到第3个字了”

A:“第4个字 家 你听到了吗?”

B:“我听到第4个字了”

A:“第5个字 生 你听到了吗?”

B:“我听到第5个字了”

A:“第6个字 死 你听到了吗?”

B:“我听到第6个字了”

A:“第7个字 以 你听到了吗?”

(A等了5秒还没收到B的回应,于是重复了一遍)

A:“第7个字 以 你听到了吗?”

B:“我听到第7个字了”

(你一定在想,为什么要这么麻烦呢?这是因为网络的可靠性并不总是很好,偶尔会发生A说了某句话,B没有听到的情况。这样虽然麻烦,却能避免信息在传输过程中丢失。)

由此可见,下载一个文件的过程,实际上是个对话过程。B在听到一个字之后,必须要说“我听到了”,A才会说出下一个字,并非简单的A说B听。

在这个对话过程中,“苟利国家生死以”这7个字是要传输的“文件数据”,除此以外的对话内容,我们可以称为“协议通讯”。

当你了解基本原理之后,你应该能够理解。下载文件数据的过程,必然会产生用于“协议通讯”的上传流量。下载速度越快,协议通讯产生的上传速度也越快。

这一原理,对于所有下载行为都是适用的。包括我们通过局域网复制文件时,也会观察到大量的上传。

Snipaste_2018-01-09_13-28-45

现在我们回头来看看吐槽的这位雷友,他虽然限制上传速度为 33KB/s,但是他同时在以5.55MB/s的高速进行下载,协议通讯肯定会产生不小的上传速度。

50d148f9gy1fms54cwjg5j21kw16o7wm

还记得我前面说过“这是产品交互设计上的不足导致的误解”吗?

这个不足就在于迅雷显示的“当前上传速度”是包含了“协议通讯”产生的上传速度的。

而限制上传速度的选项,只限制了上传“文件数据”的速度,不限制“协议通讯”的上传速度。

因为限制了“协议通讯”的上传速度,就会严重拖慢下载速度。

这才造成了“迅雷限制不住上传速度”的问题。

所以,在未来的迅雷版本中,我们会将协议通讯产生的上传速度单独展示并加以说明。

希望各位雷友能够理解,迅雷真的不是要坑你。。。

磁链解析好像有点不对劲!

2016年11月24日 18:44| 144,113 次浏览| 发布者 强伊文| 30 评论

  不知道最近大家使用迅雷下载磁力链接时,有没有注意到磁链解析的“速度”和“成功率”都高了许多?这是因为某些同学对磁链解析的代码进行重构优化。不能说更多,大家闷声体验就好。

image

网速是怎样炼成的?99%的人不清楚!

2015年11月16日 16:48| 262,993 次浏览| 发布者 强伊文| 10 评论

【转载】在雷叔上次调查中,不少胖(朋)友们表示,“这辈子就没快过”、“4m宽带下载速度只有400k”、也有雷友说“原本速度900k,用上迅雷快鸟之后立马变3-4m”,你那么直接向雷叔表白真的好吗,雷叔都羞羞哒了~为什么每个人的下载速度相差如此之大呢?请看雷叔漫画解读:

配图:网速是怎样炼成的(1)

两位美女同事联合创作的下载知识漫画

2015年11月13日 17:12| 135,454 次浏览| 发布者 强伊文| 8 评论

  最近这两年,我们越来越明显的感受到,许多的迅雷用户对下载的知识和原理知之甚少。并因此产生了不少误会。所以我们开始尝试通过漫画的形式来向不了解下载的用户,简单易懂的介绍下载原理。不过各位作为迅雷阳台的常客,肯定都是很懂的啦。各位如果对这副漫画有什么改进意见,请一定要提出哦!

1(2)