与客户共享大型(多Gb)文件

我不确定这是否是这个问题最好的地方,但是我认为这正是ITpipe理员的领域,所以这就是我把它放在这里的原因。

我们需要与外部客户端共享大文件(几个千兆字节)。 我们需要一种可靠和自动发布这些文件的简单方法,以便客户端可以下载它们。 我们的组织拥有Windows桌面和Windows SBS 2011服务器。

从客户端的angular度来看,从我们的服务器共享可能是不理想的,因为典型的ADSL(约1Mbps)的上行带宽较低 – 客户端需要花费一整天的时间(9小时)来下载文件。

上传到第三方服务器对客户有好处,但对我们来说是痛苦的,因为我们必须处理多个小时的上传。

如果上传到第三方服务器可能会变得更加可靠和自动,例如Groove / SharePoint Workspace,只需将文件放入并等待它同步即可 – 问题不大,但Groove有2Gb限制足够大。

所以理想情况下我想要一个具有以下属性的服务:

  • 必须适用于至less5GB,最好10GB的文件
  • 一旦传输开始,它必须是可靠的(即对断开和服务中断不敏感)并且是完全自动的
  • 理想情况下,发送者在传输完成时会收到通知。
  • 必须使用基于Windows的系统。

有什么build议么?

我假设你正在寻找一个服务器解决scheme,而不是一个SAAS产品,否则这个问题将是offtopic。

Sparkleshare是一个开源软件,可以满足您的需求。

但我build议只使用rsync镜像到具有所需带宽的远程服务器。 你可以在几分钟内build立这个系统,它可以做你想做的一切。

只需指定一个源文件夹并放入文件。在远程服务器上为您的客户端提供Web访问或ftp访问等。

我build议启动一个无限循环的shell脚本,执行rsync并在每次迭代后hibernate1秒钟。 与Cronjob相比,这样做的好处是您不会受到干扰的并行上传。 而你的大文件,这将是我现在看到的问题。

Rsync甚至具有文件首先作为“隐藏”file upload的优点。 前缀和一个随机的名字,所以客户端只能看到完成上传的文件,并通过了完整性检查。

如果文件更新,rsync也可以有效地处理这个文件。

只是这个脚本应该是适合你的:

#!/bin/bash while [ 1 = 1 ] do rsync -arvz /my/sourcefolder/ [email protected]:/remote/folder/ sleep 1; done 

只要监视它的运行,把它放在自动启动等等

您也可以使用rsync进行压缩。

http://www.filecatalyst.com/

您可以使用上面的内容 – 您可以为此设置一个专用窗口框,并为不同的客户端创build文件夹结构,在本地局域网上共享这些文件夹,任何进入这些文件夹的文件都会自动启动。

您还可以为您的客户提供连接到您的服务器的Web界面URL或文件催化剂客户端,并下载这些大型文件。

河床是另一种解决scheme(谷歌它)。

希望这可以帮助