2012-04-01 7 views
1

大きなディレクトリを別のサーバーに転送する必要があります。一度に複数のインスタンスを実行してrsyncを高速化しますか?

私の問題は、利用可能な全帯域幅を使用することができないということです。なぜなら、1つの並行tcpストリームが高速になるわけではないからです。

基本的には、ダウンロードマネージャーが現在サポートしている機能です。

したがって、私は同時データストリームを行いたいと思います。

しかし、私はこれをサポートするプログラムが見つからないので、複数のインスタンスまたはrsyncを一度に実行することを考えました。

これは良いアイデアですか、より適切なツールの方向に向けることができますか?

答えて

1

私は別のツールを知りませんが、並行して2つのrsyncセッションが確実にうまくいくでしょう。

ただし、ディレクトリを慎重に分割する必要があります。同一のパラメータを持つ2つのrsyncは、非生産的であるか、または破損している可能性があります。

また、SSH接続の共有については注意してください。すばやく認証するのには非常に便利ですが、すべてのデータを同じTCPストリームで送信しないかどうかはわかりません。

+0

私は、rsync -va --dry-runからファイルリストを取得してエントリでエントリをループし、サブプロセス内の個々のrsyncコマンドですべてのファイルを転送する簡単なスクリプトを書くと思います。私はキー認証が設定されているので、パスワード認証なしで実行されます。 –

+0

スピードが遅れているので、100ファイルチャンクに分割すると、個々のファイルのrsyncより優れている可能性があります。 (毎回新しい接続を作成するのに高いオーバーヘッドがあります)また、作成する必要があるサブディレクトリがある場合、競合状態が存在する可能性があります。最後に、SSH接続*共有*とキー認証を混同しないでください。前者は新しいリンクを開くようにしますが、2番目は実際に行います。 – ams

関連する問題