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

我不确定这是否是这个问题的最佳位置,但我认为它完全属于IT管理员的领域,所以这就是我把它放在这里的原因.

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

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

上传到第三方服务器对客户有利,但对我们来说很痛苦,因为我们必须处理多小时上传.

如果能够使其可靠且自动化,则上载到第三方服务器将不那么成问题.像Groove / SharePoint Workspace这样的东西,只需将文件放入并等待它同步 – 但Groove有2Gb的限制,这是不够大的.

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

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

有什么建议?

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

Sparkleshare是一款可满足您需求的开源软件.

但我建议只使用rsync镜像到具有所需带宽的远程服务器.
您可以在几分钟内设置此系统,它可以完成您想要的一切.

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

我建议启动一个带有无限循环的shell脚本,该循环执行rsync并在每次迭代后休眠1秒钟.与Cronjob相比,这样做的好处是您不会获得干扰的并行上传.对于您的大文件,这将是我现在看到的问题.

Rsync甚至具有以下优点:文件首先作为“隐藏”文件上传.前缀和随机名称,因此客户端只能看到已完成上传并已通过完整性检查的文件.

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

这个脚本应该是你的最佳选择:

#!/bin/bash
while [ 1 = 1 ]
do
rsync -arvz /my/sourcefolder/ user@remotehost.com:/remote/folder/
sleep 1;
done

只需监控其运行情况,将其置于自动启动状态等.

您还可以使用rsync进行压缩.

相关文章

Windows2012R2备用域控搭建 前置操作 域控主域控的主dns:自...
主域控角色迁移和夺取(转载) 转载自:http://yupeizhi.blo...
Windows2012R2 NTP时间同步 Windows2012R2里没有了internet时...
Windows注册表操作基础代码 Windows下对注册表进行操作使用的...
黑客常用WinAPI函数整理之前的博客写了很多关于Windows编程的...
一个简单的Windows Socket可复用框架说起网络编程,无非是建...