当前时区为 UTC + 8 小时



发表新帖 回复这个主题  [ 24 篇帖子 ]  前往页数 1, 2  下一页
作者 内容
1 楼 
 文章标题 : wget为什么那么快?
帖子发表于 : 2008-08-27 14:46 
头像

注册: 2006-07-30 9:31
帖子: 181
送出感谢: 0 次
接收感谢: 0 次
在我看来觉得简直有点不可思议

明明是一个单线程的下载工具,在从ftp或者http上抓东西的时候,大部分的情况下都不比多线程的下载工具要慢

有懂的朋友能讲一下为什么吗?


页首
 用户资料  
 
2 楼 
 文章标题 :
帖子发表于 : 2008-08-27 14:47 
头像

注册: 2007-02-18 19:33
帖子: 2180
地址: lyric.im
系统: OSX
送出感谢: 0 次
接收感谢: 1
wget不快.


_________________
既然你诚心诚意地问了
我就大慈大悲地告诉你
为了防止世界被破坏
为了维护世界的和平
贯彻爱与真实的罪恶
可爱而又迷人的反派角色
武藏,小次郎
我们是穿越银河的火箭队,白洞白色的明天在等着我们。就是这样!!喵~~


页首
 用户资料  
 
3 楼 
 文章标题 :
帖子发表于 : 2008-08-27 14:48 
头像

注册: 2007-02-18 19:33
帖子: 2180
地址: lyric.im
系统: OSX
送出感谢: 0 次
接收感谢: 1
多线程首先有线程开销; 其次网速最大的瓶颈在带宽;


_________________
既然你诚心诚意地问了
我就大慈大悲地告诉你
为了防止世界被破坏
为了维护世界的和平
贯彻爱与真实的罪恶
可爱而又迷人的反派角色
武藏,小次郎
我们是穿越银河的火箭队,白洞白色的明天在等着我们。就是这样!!喵~~


页首
 用户资料  
 
4 楼 
 文章标题 :
帖子发表于 : 2008-08-27 14:51 
头像

注册: 2006-02-28 3:11
帖子: 2470
送出感谢: 0 次
接收感谢: 0 次
人家ee是推荐axel的, 你也可以试试aria2c


_________________
一梦三年,
松风依旧,
萝月何曾老.


灵幽听微, 谁观玉颜?
灼灼春华, 绿叶含丹.


页首
 用户资料  
 
5 楼 
 文章标题 :
帖子发表于 : 2008-08-27 15:09 
头像

注册: 2006-07-30 9:31
帖子: 181
送出感谢: 0 次
接收感谢: 0 次
我的带宽不大,1M

一般用wget总能达到满负荷


页首
 用户资料  
 
6 楼 
 文章标题 :
帖子发表于 : 2008-08-27 15:16 
头像

注册: 2007-10-19 14:51
帖子: 4953
地址: 深圳
送出感谢: 0 次
接收感谢: 2
wget 是个忠实的,安分的,好用的,强大的,简单的,下载工具,呵呵


_________________
Nothing 有事请发邮件到 yms541 AT gmail.com
alias 爱慕颇雷尔='mplayer'


页首
 用户资料  
 
7 楼 
 文章标题 :
帖子发表于 : 2008-08-27 16:09 

注册: 2006-07-09 12:22
帖子: 1331
地址: 南京
送出感谢: 0 次
接收感谢: 1
axel 要强于它。屡比不爽。


页首
 用户资料  
 
8 楼 
 文章标题 :
帖子发表于 : 2008-08-27 16:13 
头像

注册: 2006-02-28 3:11
帖子: 2470
送出感谢: 0 次
接收感谢: 0 次
aBiNg 写道:
axel 要强于它。屡比不爽。

比比aria2c


_________________
一梦三年,
松风依旧,
萝月何曾老.


灵幽听微, 谁观玉颜?
灼灼春华, 绿叶含丹.


页首
 用户资料  
 
9 楼 
 文章标题 :
帖子发表于 : 2008-08-27 16:15 
头像

注册: 2007-07-30 18:28
帖子: 22033
地址: 空气中
系统: Linux
送出感谢: 17
接收感谢: 68
我这里axel经常输给wget


_________________
『这个世界都是我的 ,我爱你们』

ENTP ⥂ INTP ⥄ INFP ⇦ INTJ

在此发布的文章使用 Creative Commons Attribution-ShareAlike 4.0 协议


页首
 用户资料  
 
10 楼 
 文章标题 : Re: wget为什么那么快?
帖子发表于 : 2008-08-27 17:26 
头像

注册: 2007-12-01 14:56
帖子: 249
送出感谢: 0 次
接收感谢: 0 次
SWX 写道:
在我看来觉得简直有点不可思议

明明是一个单线程的下载工具,在从ftp或者http上抓东西的时候,大部分的情况下都不比多线程的下载工具要慢

有懂的朋友能讲一下为什么吗?


首先,为什么单线程会比多线程慢?

下载时候,速度受两方面限制,你的下行带宽和服务器的上行带宽(说白了就是你的下载速度和服务器的上传速度)

分情况来看

情况a.下载速度>服务器带宽

比如你的下载速度是100k,服务器则只能提供20k的带宽。于是你用单线程下载,就只有20k的速度
但问题是,一般来说,服务器的最大带宽肯定不止20k,只是服务器端会限制单个访问的带宽(带宽都给一个访问者用了,别人用什么去)。这时多线程下载就可以同时n次访问服务器,获得20k*n的速度,当然,不会大于100k。

情况b.下载速度<=服务器带宽

你的下载速度是100k,而服务器则能提供>100k的带宽,这个时候,你用单线程就能达到100k的极限速度,而多线程同时维护多个访问连接,会把你100k的下载带宽花费在一些没用的地方,反而会比单线程慢。

前几年,情况a比较多见,所以多线程比较牛x,这几年,随着硬件成本降低,国内网络基础设施建设发展,还有p2p的分流,情况b就多了起来,像我是512k的adsl,只有50k的下行带宽,基本上都是情况b

这样就可以理解,为什么wget经常不比多线程慢的原因了

另外还有一个问题,就是服务器比较远的情况,比如国外的服务器,由于包传送中的延迟与丢失,服务器可能提供了很大的带宽,但是到了下载端,就要缩水不少,这时就等于情况a了。不过另一方面,发达国家服务器带宽通常比较大(人家有钱$_$),这方面会有所弥补,比如我在ubuntu.com下iso,用wget就能达到下载速度的极限。

所以现在开太多的线程下载,不仅浪费你的下载带宽,也增加了你的机器和服务器的负荷,完全没有必要。

推荐先用wget下下看,如果能到极限就直接下,不能到极限的话,就做个除法,计算下开几个线程合适再下。


最后由 foolegg 编辑于 2008-08-27 17:44,总共编辑了 2 次

页首
 用户资料  
 
11 楼 
 文章标题 : Re: wget为什么那么快?
帖子发表于 : 2008-08-27 17:42 
头像

注册: 2005-09-06 20:34
帖子: 501
送出感谢: 3
接收感谢: 1
foolegg 写道:

首先,为什么单线程会比多线程慢?

下载时候,速度受两方面限制,你的下行带宽和服务器的上行带宽(说白了就是你的下载速度和服务器的上传速度)

分情况来看

情况a.下载速度>服务器带宽

比如你的下载速度是100k,服务器则只能提供20k的带宽。于是你用单线程下载,就只有20k的速度
但问题是,一般来说,服务器的最大带宽肯定不止20k,只是服务器端会限制单个访问的带宽(带宽都给一个访问者用了,别人用什么去)。这时多线程下载就可以同时n次访问服务器,获得20k*n的速度,当然,不会大于100k。

情况b.下载速度<=服务器带宽

你的下载速度是100k,而服务器则能提供>100k的带宽,这个时候,你用单线程就能达到100k的极限速度,而多线程同时维护多个访问连接,会把你100k的下载带宽花费在一些没用的地方,反而会比单线程慢。

前几年,情况b比较多见,所以多线程比较牛x,这几年,随着硬件成本降低,国内网络基础设施建设发展,还有p2p的分流,情况a就多了起来,像我是512k的adsl,只有50k的下行带宽,基本上都是情况a

这样就可以理解,为什么wget经常不比多线程慢的原因了

另外还有一个问题,就是服务器比较远的情况,比如国外的服务器,由于包传送中的延迟与丢失,服务器可能提供了很大的带宽,但是到了下载端,就要缩水不少,这时就等于情况a了。不过另一方面,发达国家服务器带宽通常比较大(人家有钱$_$),这方面会有所弥补,比如我在ubuntu.com下iso,用wget就能达到下载速度的极限。

所以现在开太多的线程下载,不仅浪费你的下载带宽,也增加了你的机器和服务器的负荷,完全没有必要。

推荐先用wget下下看,如果能到极限就直接下,不能到极限的话,就做个除法,计算下开几个线程合适再下。


强,解惑了


_________________
arch
awesome
blog
+github
freebsd handbook中文版


页首
 用户资料  
 
12 楼 
 文章标题 :
帖子发表于 : 2008-08-27 21:42 
头像

注册: 2007-07-18 18:56
帖子: 1806
送出感谢: 0 次
接收感谢: 0 次
axel


页首
 用户资料  
 
13 楼 
 文章标题 : Re: wget为什么那么快?
帖子发表于 : 2008-08-28 0:26 
头像

注册: 2006-07-30 9:31
帖子: 181
送出感谢: 0 次
接收感谢: 0 次
foolegg 写道:
SWX 写道:
在我看来觉得简直有点不可思议

明明是一个单线程的下载工具,在从ftp或者http上抓东西的时候,大部分的情况下都不比多线程的下载工具要慢

有懂的朋友能讲一下为什么吗?


首先,为什么单线程会比多线程慢?

下载时候,速度受两方面限制,你的下行带宽和服务器的上行带宽(说白了就是你的下载速度和服务器的上传速度)

分情况来看

情况a.下载速度>服务器带宽

比如你的下载速度是100k,服务器则只能提供20k的带宽。于是你用单线程下载,就只有20k的速度
但问题是,一般来说,服务器的最大带宽肯定不止20k,只是服务器端会限制单个访问的带宽(带宽都给一个访问者用了,别人用什么去)。这时多线程下载就可以同时n次访问服务器,获得20k*n的速度,当然,不会大于100k。

情况b.下载速度<=服务器带宽

你的下载速度是100k,而服务器则能提供>100k的带宽,这个时候,你用单线程就能达到100k的极限速度,而多线程同时维护多个访问连接,会把你100k的下载带宽花费在一些没用的地方,反而会比单线程慢。

前几年,情况a比较多见,所以多线程比较牛x,这几年,随着硬件成本降低,国内网络基础设施建设发展,还有p2p的分流,情况b就多了起来,像我是512k的adsl,只有50k的下行带宽,基本上都是情况b

这样就可以理解,为什么wget经常不比多线程慢的原因了

另外还有一个问题,就是服务器比较远的情况,比如国外的服务器,由于包传送中的延迟与丢失,服务器可能提供了很大的带宽,但是到了下载端,就要缩水不少,这时就等于情况a了。不过另一方面,发达国家服务器带宽通常比较大(人家有钱$_$),这方面会有所弥补,比如我在ubuntu.com下iso,用wget就能达到下载速度的极限。

所以现在开太多的线程下载,不仅浪费你的下载带宽,也增加了你的机器和服务器的负荷,完全没有必要。

推荐先用wget下下看,如果能到极限就直接下,不能到极限的话,就做个除法,计算下开几个线程合适再下。


多谢。我觉得wget非常直接,不像其他得下载工具那么拖泥带水……我自己得带宽不大,极限也才150多,所以我估计服务器给得带宽多半是比我得要大得。


页首
 用户资料  
 
14 楼 
 文章标题 :
帖子发表于 : 2008-08-28 21:19 
头像

注册: 2008-01-10 14:03
帖子: 223
送出感谢: 0 次
接收感谢: 0 次
恩,axel比wget快很多呢,不妨试试


页首
 用户资料  
 
15 楼 
 文章标题 :
帖子发表于 : 2008-08-28 21:41 
头像

注册: 2007-11-19 21:51
帖子: 6956
地址: 成都
送出感谢: 0 次
接收感谢: 4
axel 有些时候 不能下载,但是wget 却可以。


页首
 用户资料  
 
显示帖子 :  排序  
发表新帖 回复这个主题  [ 24 篇帖子 ]  前往页数 1, 2  下一页

当前时区为 UTC + 8 小时


在线用户

正在浏览此版面的用户:没有注册用户 和 3 位游客


不能 在这个版面发表主题
不能 在这个版面回复主题
不能 在这个版面编辑帖子
不能 在这个版面删除帖子
不能 在这个版面提交附件

前往 :  
本站点为公益性站点,用于推广开源自由软件,由 DiaHosting VPSBudgetVM VPS 提供服务。
我们认为:软件应可免费取得,软件工具在各种语言环境下皆可使用,且不会有任何功能上的差异;
人们应有定制和修改软件的自由,且方式不受限制,只要他们自认为合适。

Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
简体中文语系由 王笑宇 翻译