tar+pv+lz4傳輸大數據

今天要備份個比較大的庫,大概200G 左右吧,聽說tar + pv + lz4 傳輸大數據的速度,比傳統的scp 快很多,今天測試了一下:

過程如下:

tar+pv+lz4 大文件傳輸,速度到底比scp 快多少呢,實際驗證了,才知道,經過測試大概兩倍吧

1.install

這裏需要提前編譯安裝兩個軟件,這兩個軟件可以直接google 搜索下載,下面我給的鏈接可以直接wget 下載

1.PV(pv-1.1.4.tar.gz)包可以在線下載或網盤取

wget http://pkgs.fedoraproject.org/repo/pkgs/pv/pv-1.1.4.tar.gz/8d0eda2182640919daaf6186cd816a13/pv-1.1.4.tar.gz

解壓:tar -xf pv-1.1.4.tar.gz

cd  pv-1.1.4

./configure && make && make install

2.lz4 (lz4-r108.tar.gz) 包可以在線下載或網盤取

wget https://src.fedoraproject.org/repo/pkgs/lz4/lz4-r108.tar.gz/5c621dd18f27810bba3629cdb326e852/lz4-r108.tar.gz

解壓: tar xf lz4-r108.tar.gz

cd lz4-r108

make && make install  ***注意:這裏不需要configure

特別注意: lz4 需要在數據傳輸的兩臺服務器都要安裝,理由很簡單,傳輸的過程就是:  打包--壓縮--解壓 的過程, 兩端都要lz4 解壓縮,所以兩端

都需要安裝

3.命令: tar -c  tt.tar.gz|pv|lz4 -B4|ssh -c arcfour128 -o "MACs [email protected]" 192.168.50.244 "lz4 -d |tar -xC /data/bak"     ****提前做好免祕鑰登錄

說明:

tt.tar.gz  --代表要傳輸的文件

pv        --顯示傳輸速度和進度

ssh : 可以-p 指定端口,默認可不寫

arcfour128  --加密算法

192.168.50.244  --遠程主機的ip

/data/bak    --遠程主機存放目錄

*****和scp 的速度對比:用時大概2倍的關係,有人說6倍,可能吧,測試可能有偏差,僅供參考,只是想說明一個問題,tar+ lz4 確實比scp 快很多,測試在局域網內,如果線上或不同網段,取決於出口帶寬

[root@centos-6 websit_116]# time scp tt.tar.gz 192.168.50.244:/data/bak

tt.tar.gz                                                            100%  228MB  45.7MB/s  00:05

real 0m5.578s

user 0m1.699s

sys 0m0.542s

[root@centos-6 websit_116]# time tar -c  tt.tar.gz|pv|lz4 -B4|ssh -c arcfour128 -o "MACs [email protected]" 192.168.50.244 "lz4 -d |tar -xC /data/bak"

228MB 0:00:02 [79.4MB/s] [    <=>                                                                  ]

real 0m2.899s

user 0m0.224s

sys 0m1.923s

綜述:有興趣的可以嘗試下, 如果文件很小,就沒必要了,用你的scp 或rsync 就可以了,爲啥??折騰唄!


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章