加速从VPS下载文件

作者: 超能_ | 来源:发表于2017-10-27 21:02 被阅读35次

    引言

    我们通过自己远程服务器下载一些文件,然后我们希望把这些文件传回到本地。最常用的方法是sftp。
    问题是 怎么提高速度?

    解决问题的思路

    将服务器上的大文件分割成多个文件下载到本地之后再还原。

    步骤

    分割文件

    假设需要下载文件是~/interesting.avi

    split -n 4 -d ~/interesting.avi
    

    -n 4 文件分成4份
    -d 分割后的文件以数字结尾
    得到如下结果

    x00
    x01
    x02
    x03
    

    下载文件

    方法1 用FileZilla

    设置 Editor -> Preference ...
    设置同时下载数量为 10 Concurrent transfers -> Maximum simultaneous transfer 为10

    这个是我的下载速度


    Result

    可以看到每个任务的速度不是很快,但是总体速度还可以。后来我发现一个问题,我的FileZilla不能断点续传,网上一查,大家表示FileZilla是可以的,但是我怎么设置都不行,所以我又找了一个方法。

    方法2 用rsync

    这个命令可以实现断点续传。
    rsync的参数列表,详见 rsync --help

    rsync -azP --rsh=ssh username@ip:~/x00 ~/x00
    

    或者

    nohup rsync -azP --rsh=ssh username@ip:~/x00 ~/x00 &
    

    这样可以在后台同时下载多个任务。

    合并文件

    这个命令比较简单

    cat x* > interesting.avi
    

    合并所有 x开头的文件

    总结

    这个问题和”如何将大象放进冰箱“是一个道理。

    相关文章

      网友评论

        本文标题:加速从VPS下载文件

        本文链接:https://www.haomeiwen.com/subject/gqrdpxtx.html