大文件传输技术

2020 年 12 月 25 日
 wuwudeqi

请教一下各位 大文件传输用什么技术好,文件会大到 40G 的级别,现在是用 ftp 速度不是很理想,且比较致命的问题是文件上传后大小会变化,最好自带 md5 校验。 第二个问题是服务器是公司部署的在 A 地,但是访问的公司用户遍布全国,如果在 A 地内网的员工上传还行,但是在 B 地员工就会出现明显的速度下降,网络优化方面有没有可以提供的思路

5877 次点击
所在节点    Java
19 条回复
netnr
2020 年 12 月 25 日
用 syncthing 同步,首次要配置,后面把文件放进去就行了,有 P2P 中继等优势
iphoneXr
2020 年 12 月 25 日
建议 linux crontab+rclone
bitipao
2020 年 12 月 25 日
rsync
YouLMAO
2020 年 12 月 25 日
下载靠 CDN, 钱的问题, 你是上传瓶颈吗, 没戏咯
lidlesseye11
2020 年 12 月 25 日
所以为啥发在 Java 节点。。
PS:再优化也超不过 B 地员工上传的带宽啊。。把文件切小,然后多搞几张 5G SIM 卡并行传,服务器再拼起来?
ghostlzw
2020 年 12 月 25 日
1. 切片传输
2. 放 cdn 上,或者加入 p2p 服务
laminux29
2020 年 12 月 25 日
1.手动传,超大文件,建议 7zip/LZMA2 + 1900M 的分卷大小。

2.写程序传,超过 128M 的文件,按 128M 进行切分。切分后计算每个切片的 md5 。传过去后,校验 md5 。
varrily
2020 年 12 月 25 日
阿里云 oss + cdn
yfwl
2020 年 12 月 25 日
阿里云 OSS,加钱!
hantsy
2020 年 12 月 25 日
切细再传输啊
leafre
2020 年 12 月 25 日
交给云吧
vip1024
2020 年 12 月 25 日
微力同步,resilio,都可以轻松搞定
Jirajine
2020 年 12 月 25 日
提供服务给多人同步可以用 resilio sync
点对点传输可以看看 https://github.com/schollz/croc
如果文件不需要经常修改,可以用 bt 种子+分布式 http 源,无需专门的客户端。
或者 IPFS

以上方式均支持完整性校验。
Lemeng
2020 年 12 月 25 日
切吧
chn9207
2020 年 12 月 26 日
用 oss 的拉取任务 比对 md5 我用的这个办法
inwar
2020 年 12 月 26 日
调整下拥塞算法
printhello
2020 年 12 月 26 日
这个量级的传输 FTP 这种直接传输的方式肯定不行,可以:多线程+分块+断点续传,如果要减少网络流量,还要进行数据压缩
gzhhfj
2020 年 12 月 26 日
有第三方上传控件,基本上是切片、多线程、 用过 http 上传。ftp 的话主要是要考虑上传用户名和密码的问题,挺难解决的。
learningman
2020 年 12 月 26 日
@lidlesseye11 那还是受限于基站带宽

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/738969

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX