大文件传输总是失败?原因和解决方法都在这里!

吉云

今天跟大家聊聊我最近搞的这个大文件传输的事儿,真是一把辛酸泪!

事情是这样的,公司有个项目,需要经常在不同部门之间传输一些特别大的文件,动不动就是几个G,之前用微信、QQ啥的,那叫一个慢,而且经常传到一半就断,简直要崩溃。免费网盘也试,下载速度慢的令人发指,体验极差。

我就想着自己搞一套靠谱的方案,至少能保证速度和稳定性。

大文件传输总是失败?原因和解决方法都在这里!

我第一个想到的就是用FTP。这玩意儿老牌,稳定,但配置起来稍微有点麻烦,而且安全性也稍微差点。我就在服务器上搭个FTP服务器,然后让同事们用FTP客户端来传。速度确实比微信快多,但是,问题又来,有些同事电脑水平有限,不会用FTP客户端,而且每次都要输入账号密码,也很麻烦。

然后我就开始琢磨,能不能搞个更简单的。我想到局域网共享,就是用Windows自带的共享文件夹。这个简单,直接设置一下权限,大家就可以访问。我试试,速度还可以,但是,共享文件夹有个问题,就是对大文件支持不太有时候会卡死,而且安全性也不高,谁都能访问。

我就开始研究一些更专业的工具。我听说过一些专门的文件传输软件,比如什么飞鸽传书之类的,但我没用过,感觉有点老旧。后来我发现一个叫“Seafile”的开源文件同步工具,这玩意儿功能挺强大的,可以实现文件同步、共享、版本控制等等。我就在服务器上搭个Seafile,然后让同事们安装Seafile客户端。

用几天,感觉还不错,速度也挺快的,但是,Seafile有个问题,就是占用服务器资源比较多,而且客户端也比较占内存。服务器稍微有点卡顿,而且有些同事的电脑配置比较低,跑Seafile客户端也很吃力。

我决定自己写一个简单的文件传输工具。我用Python写个简单的服务器端,然后用Qt写个客户端。服务器端负责接收文件,客户端负责上传和下载文件。我用多线程来提高传输速度,还加断点续传功能,这样即使网络中断,也可以从上次中断的地方继续传输。

这个自己写的工具,虽然功能很简单,但是速度很快,而且很稳定。我让同事们试试,都说好用。而且这个工具是我自己写的,我可以根据实际需求来修改和优化,非常灵活。

大文件传输总是失败?原因和解决方法都在这里!

经过这一番折腾,总算是解决大文件传输的问题。虽然过程有点曲折,但也学到不少东西。以后再遇到类似的问题,我就有经验。

大文件传输,还是要根据实际情况来选择合适的方案。如果要求简单易用,可以用FTP或者共享文件夹;如果要求功能强大,可以用Seafile;如果要求灵活可定制,可以自己写一个简单的工具。

记住,没有最好的方案,只有最适合的方案。

免责声明:由于无法甄别是否为投稿用户创作以及文章的准确性,本站尊重并保护知识产权,根据《信息网络传播权保护条例》,如我们转载的作品侵犯了您的权利,请您通知我们,请将本侵权页面网址发送邮件到qingge@88.com,深感抱歉,我们会做删除处理。

目录[+]