我们需要能够为用户提供大文件。这些文件很容易增长到2或3GB。这些文件不是电影或类似的。它们是控制和开发教育机器人所需的软件。
我们的项目组在如何应对这一挑战方面存在一些冲突。首先,Bittorrent不是我们的解决方案(尽管它可以为我们带来好处)。这些文件可通过HTTP(而不是FTP)和文件流提供,因此我们可以控制谁可以访问这些文件。
作为互联网早期的前海盗,我经常在使用损坏的文件和使用filehashes和文件集来减少所需的重新下载量。我提倡一个小应用程序来下载和验证文件集,并在完全下载和验证后提取大安装文件。
我的同事们认为这不是必须的,并指出TCP / IP协议继承了能力以避免损坏的下载。他们还提到微软已经放弃了MSDN文件的下载管理器。
腐败下载是否仍然是一个普遍存在的问题,或者与实际受其影响的人数相比,浪费我们为此问题创建解决方案所花费的时间是多少?
如果下载管理器可行,那么您建议采取什么方法?
CNC中 只是为了澄清。是在一个块中下载3GB的数据,在HTTP上是一个问题还是我们应该制作我们自己的EXE,以较小的块下载大文件(并验证它们)。
答案 0 :(得分:1)
您无需购买自己的下载管理器。你可以使用一些非常聪明的方法。
1)以较小的块分割文件,假设每个100MB。因此,即使下载已损坏,用户也将使用该特定块进行最终下载。
2)大多数Web服务器都能够理解和处理/服务range headers。您可以建议用户使用可以使用此容量的下载管理器/浏览器加载项。如果您的用户使用的是unix / linux系统,那么wget就是这样的实用程序。
3)TCP / IP确实具有防止腐败的能力,但它基本上假设网络仍处于运行状态且可访问。上面提到的#2可以解决网络在下载过程中完全失效的问题。4)最后,向用户提供文件哈希总是好的。这不仅是为了确保下载,而且是为了确保您正在分发的软件的安全性。
HTH