为用户托管大文件

时间:2013-01-31 06:48:31

标签: http tcp download-manager

我们需要能够为用户提供大文件。这些文件很容易增长到2或3GB。这些文件不是电影或类似的。它们是控制和开发教育机器人所需的软件。

我们的项目组在如何应对这一挑战方面存在一些冲突。首先,Bittorrent不是我们的解决方案(尽管它可以为我们带来好处)。这些文件可通过HTTP(而不是FTP)和文件流提供,因此我们可以控制谁可以访问这些文件。

作为互联网早期的前海盗,我经常在使用损坏的文件和使用filehashes和文件集来减少所需的重新下载量。我提倡一个小应用程序来下载和验证文件集,并在完全下载和验证后提取大安装文件。

我的同事们认为这不是必须的,并指出TCP / IP协议继承了能力以避免损坏的下载。他们还提到微软已经放弃了MSDN文件的下载管理器。

腐败下载是否仍然是一个普遍存在的问题,或者与实际受其影响的人数相比,浪费我们为此问题创建解决方案所花费的时间是多少?

如果下载管理器可行,那么您建议采取什么方法?

CNC中 只是为了澄清。是在一个块中下载3GB的数据,在HTTP上是一个问题还是我们应该制作我们自己的EXE,以较小的块下载大文件(并验证它们)。

1 个答案:

答案 0 :(得分:1)

您无需购买自己的下载管理器。你可以使用一些非常聪明的方法。

1)以较小的块分割文件,假设每个100MB。因此,即使下载已损坏,用户也将使用该特定块进行最终下载。

2)大多数Web服务器都能够理解和处理/服务range headers。您可以建议用户使用可以使用此容量的下载管理器/浏览器加载项。如果您的用户使用的是unix / linux系统,那么wget就是这样的实用程序。

3)TCP / IP确实具有防止腐败的能力,但它基本上假设网络仍处于运行状态且可访问。上面提到的#2可以解决网络在下载过程中完全失效的问题。

4)最后,向用户提供文件哈希总是好的。这不仅是为了确保下载,而且是为了确保您正在分发的软件的安全性。

HTH