当前位置: 首页 > 工具软件 > bbcp > 使用案例 >

提升服务器间文件传输速度及bbcp的使用

郎羽
2023-12-01

最近在工作中,有大量不超过70兆的文件要在服务器之间传输,开始时采用了scp传输,后来发现scp性能太差,传输速度太慢,因此又迭代使用了bbcp(命令与scp类似,改动量小).

bbcp的官网: https://www.slac.stanford.edu/~abh/bbcp/

下载地址: https://www.slac.stanford.edu/~abh/bbcp/bin/

源码地址: git clone http://www.slac.stanford.edu/~abh/bbcp/bbcp.git

bbcp的安装极其简单,在下载bbcp后,将其上传到/usr/bin目录下即可使用.由于scp是单线程,导致传输速度只有不超过70MB/s,而使用bbcp后实测已经达到硬盘写入速度的上限220MB/s,虽然仍然未达到带宽上限,但瓶颈已经在于硬件.bbcp命令示例:

bbcp -r -f -s 16   root@192.168.1.2:/home/ceshi/ /home/

bbcp [ options ] [ srcspec [ . . . ] ] snkspec

srcspec: [[sid@]shost:]source [ srcspec ]

snkspec: [tid@]thost:]target

options:

{--compress | -c} [lvl] {--config | -C} fname

{--force | -f} {--infiles | -I} fname

{--help | -h} {--keep | -k}

{--license | -$} {--logfile | -l} logfn

{--mkdir | -A} {--mode | -m} mode

{--omit | -O} {--preserve | -p}

{--progress | -P} sec {--ptime | -~}

[--readable | -+} {--recursive | -r}

{--symlinks | -@} slarg {--verbose | -v}

{--version | -#} {--windowsz | -w} [=]wsz

[ advanced ] --

------------------------------------------------------

mode: dmode/ | fmode | dmode/*fmode*

slarg: follow | keep | ignore

shost: hostname | [*ipv6addr*] | ipv4addr

thost: hostname | [*ipv6addr*] | ipv4addr

以上是bbcp的参数,解释之前的例子

bbcp -r -f -s 16   root@192.168.1.2:/home/ceshi/ /home/

从192.168.1.2的/home/ceshi/下载文件到/home/中

其中-r执行递归复制,空目录和符号链接将被忽略。-r选项与-E选项互斥。

默认情况下,bbcp复制的目标目录中有相同文件,bbcp则会失败,使用-f参数则可以强制覆盖目标文件

-s设置用于传输的并行线程数量

若要免密传输,参考scp的使用

 类似资料: