wuwudeqi
V2EX  ›  Java

大文件传输技术

  •  
  •   wuwudeqi · Dec 25, 2020 · 6443 views
    This topic created in 2140 days ago, the information mentioned may be changed or developed.

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

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

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

    以上方式均支持完整性校验。
    Lemeng
    Lemeng
    Dec 25, 2020
    14
    切吧
    chn9207
    chn9207
    Dec 26, 2020
    15
    用 oss 的拉取任务 比对 md5 我用的这个办法
    inwar
    inwar
    Dec 26, 2020 via Android
    16
    调整下拥塞算法
    printhello
    printhello
    Dec 26, 2020
    17
    这个量级的传输 FTP 这种直接传输的方式肯定不行,可以:多线程+分块+断点续传,如果要减少网络流量,还要进行数据压缩
    gzhhfj
    gzhhfj
    Dec 26, 2020 via Android
    18
    有第三方上传控件,基本上是切片、多线程、 用过 http 上传。ftp 的话主要是要考虑上传用户名和密码的问题,挺难解决的。
    learningman
    learningman
    Dec 26, 2020
    19
    @lidlesseye11 那还是受限于基站带宽
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   3792 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 791ms · UTC 00:49 · PVG 08:49 · LAX 16:49 · JFK 19:49
    ♥ Do have faith in what you're doing.