2011年1月10日 星期一

rsync 壓縮參數的大概測試心得

昨天意外發現 rsync 有 -z 的參數, 可以壓縮再傳。好奇它的效果就試了一下, 結果得到出人意外的結論: 有時候直接全部重新複製還比較快........, 雖然是很明顯的事實, 用慣 rsync 後到沒想到這點。

簡易的測試環境如下:
  • 原始檔案: 一堆目錄合起來 7G 左右放在 A 機器
  • 目標檔案: 另一台機器放著很久以前的版本, 6G 左右, 至少有 1G 的差異
  • gigabyte 網路
簡易的測試結果如下:

用 rsync -av --delete 跨機器傳8m
加上 -z超過 13m, 我等不下去, 就停了
用 rsync 在目的機器產生新目錄, 不 diff2m54s
用 rsync -z 在目的機器產生新目錄, 不 diff超過 6m, 我等不下去, 就停了
scp2m47s

懶得測傳說中最快的 nc + compression, 有興趣的人可以看看《High performance MySQL 2e》 Appendix A, 有多種不同組合的測試數據。

在傳輸過程中用 iostat -dx 觀察兩台機器的 utility rate 和用 htop 看 rsync 的 CPU 使用狀態, 就可以明白加 compression 應該不會有好下場。不加前就是 IO rate 低, CPU 100%; 加 -z 後變成 IO rate 更低, CPU 當然還是 100%。

3 則留言:

  1. 預設 --delete 是 --delete-before。若用 --del(--delete-during 的 alias)會不會比較快?

    回覆刪除
  2. 我沒實測過, 我猜應該沒有差別, 瓶頸應該不是這裡, 而是想辦法比較兩個二進位大檔案吧

    回覆刪除
  3. Play Blackjack at a Casino! - Microgaming - Microgaming
    A classic card game https://deccasino.com/review/merit-casino/ is herzamanindir.com/ a thrilling and engaging https://febcasino.com/review/merit-casino/ blackjack game at Microgaming. This goyangfc fun game ventureberg.com/ is now available for your device!

    回覆刪除

在 Fedora 下裝 id-utils

Fedora 似乎因為執行檔撞名,而沒有提供 id-utils 的套件 ,但這是使用 gj 的必要套件,只好自己編。從官網抓好 tarball ,解開來編譯 (./configure && make)就是了。 但編譯後會遇到錯誤: ./stdio.h:10...