且构网

分享程序员开发的那些事...
且构网 - 分享程序员编程开发的那些事

用 bbcp 取代 scp

更新时间:2022-09-27 23:14:00

0. 前言

bbcp 是由SLAC(斯坦福直线加速器中心)的Andy Hanushevsky创立的点对点网络文件拷贝工具。经过简单测试,发现速度比 scp 快了10倍左右,因此推荐大家采用bbcp来取代scp等老家伙 :)

1. 安装

访问bbcp的主页:http://www.slac.stanford.edu/~abh/bbcp/,下载对应二进制版本或者源码,如果是源码,就需要自己编译;这里我选择的是二进制版本,省事。我的系统平台是 Linux 2.6.9-67.0.15.ELsmp x86_64,因此选择了:Redhat Linux RHEL4 (Nahant 2.6.9-67-ELsmp amd64_linux26)。下载回来后,直接放到 /usr/local/bin 下面:
mv bbcp.amd64_linux26 /usr/local/bin/bbcp && chmod +x /usr/local/bin/bbcp
然后就可以开始用了。
注意:如果你的服务器启用防火墙了,注意需要开放 5031 端口的 INPUT 链。例如,要从 192.168.0.84 拷贝文件到 192.168.0.85,则做如下规则:
iptables -I INPUT -s 192.168.0.85 -p tcp --dport 5031 -j ACCEPT
另外,bbcp拷贝的目标段也需要安装bbcp。

2. 测试

本次测试都是拷贝1G的文件。

2.1 测试 scp

time scp 1Gfile 192.168.0.85:/home/yejr/
1Gfile                                100% 1024MB  10.2MB/s   01:40
real    1m40.933s
user    1m34.360s
sys     0m6.497s 

2.2 测试 bbcp

time bbcp -v -s 16 -F -f -w 256k ibdata1 root@192.168.0.85:/home/update/
bbcp: Resource temporarily unavailable obtaining address for 192.168.0.84
bbcp: Resource temporarily unavailable obtaining address for 192.168.0.84
bbcp: Resource temporarily unavailable obtaining address for 192.168.0.85
bbcp: Resource temporarily unavailable obtaining address for 192.168.0.85
bbcp: Resource temporarily unavailable obtaining address for 192.168.0.84
bbcp: Resource temporarily unavailable obtaining address for 192.168.0.84
bbcp: 192.168.0.84 kernel using a send window size of 524352 not 262176
File /home/update/ibdata1 created; 1073741824 bytes at 115788.0 KB/s
1 file copied at effectively 103737.2 KB/s
real    0m10.111s
user    0m0.031s
sys     0m2.767s
本文转自叶金荣51CTO博客,原文链接:http://blog.51cto.com/imysql/308854,如需转载请自行联系原作者