[FAQ CENTER トップ]
[Redhat Enterprise linux 6(EL) FAQ トップへ]





【質問】rsync の性能を確認する手順

環境:Redhat Enterprise linux 6(EL)

【回答】
rsync の性能を確認する一つの手順を紹介します。
100万個の小さいファイルを作成、それらを二つのサーバで同期させます。

(サーバA → サーバBとします)

その後サーバ Aに1個のファイルを追加後、rsync でサーバBに同期します。同期にかかる時間を測定します。


(1)
以下は100万個の小さいファイルを生成するスクリプトです。
これでサーバAに100万個のファイルを生成します。
----------------------------------------------------

while [[ $CNT -le 1000000 ]];
do
dd if=/dev/zero of=test_$CNT bs=10k count=1 > /dev/null 2>&1
CNT=`expr $CNT + 1`
done

exit 0

-----------------------------------------------------

(2)サーバBに同期します。サーバBのIPアドレス:10.0.0.1

#sync -a /test1 root@10.0.0.1:/test1

(3)サーバAにtest.txt を生成します。
#touch test.txt

(4)この状態で再度同期を実行します。
#sync -a /test1 root@10.0.0.1:/test1

テスト環境では rsyncは17秒で終了しました。パフォーマンスを確認しましたが、CPUはたいして消費されませんでした。

ちなみにこの100万個のファイルのディレクトリでの ls | wc -l は14秒でした。
多数のファイルが存在するディレクトリ間でのrsyncですが思ったほど時間がかからないようです。
(当然同期対象のファイルが多数ある場合は、そのファイルをコピーするのに要する時間がかかるため、結果も大きく変わってきます。)



(*)本ページは Redhat Enterprise Linux 6以後を想定しています。

最終更新日:2015/10/20



[Redhat Enterprise linux 6(EL) FAQ トップへ]
[FAQ CENTER トップ]


本サイト内掲載されている情報は、著作権法により保護されています。いかなる場合でも権利者の許可なくコピー、配布することはできません。 このページはリンクフリーです。(このページへの直接リンクも可能です。) Copyright(c) tooljp.com 2007-2012