使用ssh+tar 傳輸文件與scp比較
- 使用cat 輸出文件
tar -zcvf - ./ |ssh posp@192.168.3.55 "cat >/home/posp/xxx.tar.gz
real 1m26.803s
user 1m21.459s
sys 0m5.323s
- 使用dd生成文件
tar -zcvf - ./ |ssh posp@192.168.3.55 "dd of=/home/posp/xxx.tar.gz
real 1m27.242s
user 1m21.475s
sys 0m5.840s
- 直接在傳輸?shù)臅r(shí)候直接解壓
tar -zcvf - ./ |ssh posp@192.168.3.55 "tar -zxvf - -C /home/posp/trans1"
real 1m27.242s
user 1m21.475s
sys 0m5.840s
- 使用Scp傳輸文件(沒(méi)有壓縮)
scp -r ./ posp@192.168.3.55:/home/posp/chenchen_test/trans1
real 6m54.000s
user 0m41.940s
sys 0m12.742s
ps: 因?yàn)榭斩次募嚎s后會(huì)非常小,沒(méi)有壓縮傳輸?shù)脑挿浅:馁M(fèi)時(shí)間
- 使用Scp命令本身的壓縮參數(shù) -C, 壓縮后傳輸
scp -r -C ./ posp@192.168.3.55:/home/posp/chenchen_test/trans1
real 2m21.667s
user 1m45.134s
sys 0m11.294s
- 使用Scp + tar ,tar壓縮后傳輸
tar -zcvf xxx.tar.gz ./
real 1m18.370s
user 1m17.027s
sys 0m4.867s
scp xxx.tar.gz posp@192.168.3.55:/home/posp/chenchen_test/trans1
real 0m41.054s
user 0m4.094s
sys 0m1.017s
總時(shí)間 :
real 1m59.424s
user 1m21.121s
sys 0m5.884s
總結(jié):
- ssh + tar 傳輸文件 速度比scp速度更快
- ssh + tar 用dd 和 cat 寫入文件的時(shí)候,速度并沒(méi)有很大變化.(可能取決于當(dāng)時(shí)系統(tǒng)的負(fù)載情況)
- scp 壓縮與不壓縮速度差別很大
- 先使用tar打包壓縮文件再傳輸,比使用scp命令本身壓縮后傳輸快
注:
本文使用測(cè)試的傳輸文件目錄大小4.8G 其中有2.5G通過(guò)dd 生成的zero文件dd if=/dev/zero of=file count=1 bs=1000000000(壓縮與不壓縮有很大差別).
如果傳輸?shù)氖谴笪募?如視頻,音頻,本身不可壓縮很多,壓縮與不壓縮差距不大.
測(cè)試文件數(shù)量14140,文件數(shù)量多,但是大文件少.