高效的Linux日志文件传输:rsync

2014-11-24 07:23:51 · 作者: · 浏览: 2

统计分析程序常常需要将线上的日志文件传输到某个地方进行统计,其中很多都是用rsync进行传输。


然而rsync传输文件,文件校验是比较耗cpu的操作,如果多个客户端同时向一台服务器传文件,可能造成服务器cpu负荷过重。


PARA=" -at --append --progress "


RSYNCMOD="rsync模块"


rsync_file()
{
F=$1
IP=$2
DDIR=$3
echo "开始拿取${IP}的日志"
#先检查文件是否存在
RESULT=` /usr/local/bin/rsync --list-only $IP::$RSYNCMOD | grep $F `
if [ "$RESULT" = "" ] ; then
#文件不存在
echo "${IP}上文件${F}不存在"
else
#文件存在
/usr/local/bin/rsync $PARA $IP::$RSYNCMOD/$F $DESDIR/$DDIR/$F
fi
}