NFSコピーがSSH scpより半分速いのはなぜですか?

NFSコピーがSSH scpより半分速いのはなぜですか?
  • RHEL 7.9 x86-64
  • Xeon CPU、512GB RAM、Intelネットワークカードを搭載した高度なDellサーバー
  • 私はサーバーの唯一のユーザーであり、他のワークロードはありません。
  • シスコ1Gbps有線LAN
  • data.tar約50GB
  • /bkupNFSはvers = 4.1でインストールされ同期されますか?
  • aがscp data.tar backupserver:/bkup/走り続ける112MB/秒私はこれを5年以上見続けており、それが正しいと信じています。
  • aがrsync -P data.tar /bkup走り続ける55MB/秒継続的にこれはNFSを介して複製されます。
  • 2つのコピーを同時に実行すると、scpは112から55に減少し、NFSを介したrsyncは55から35に減少しました。
    • 一方のコピーが完了すると、もう一方のコピー速度は元の速度に戻ります。

なぜ? NFSをスピードアップする方法は?

ベストアンサー1

主な理由は、おそらくsyncこのオプションを使用してNFS共有をマウントするためです。理論的には、サーバーが突然消えたり、クライアントの接続が予期せずに切断されたりする場合、データセキュリティを向上させますが、パフォーマンスを低下させる可能性があります。

マウントオプションの使用は、毎回.IOWを呼び出すsyncアプリケーションと同じです。クライアントがIO要求を送信するたびに、他の要求を送信する前に要求が完了するのを待つ必要があります。これは、次のコマンドで使用してもデータ書き込み速度に大きな影響を与える可能性があります。fsync()write()地元のこれはファイルシステムですが、ネットワークファイルシステムはこれを行うことができます。たくさんさらに悪いのは、各 IO 要求の後に次の要求が行われる前に、少なくとも 1 回の完全なネットワーク往復が必要なためです。時間がある場合は、TFTP(SCPと比較)を使用して数百MBのサイズのファイルをコピーすると、この効果を直接体験できます。 TFTP はこのタイプの同期を基本レベルのプロトコルに統合し、次のように実装します。次のパケットが送信される前に、個々のパケットを確認する必要があります。そのため、NFSが見るよりもパフォーマンスがはるかに低い可能性があります。

ファイルを自動的に置き換えてコピーを適切に処理する責任あるソフトウェアを使用する場合は、asyncNFSモードに安全に切り替えることでこの問題を回避できます。

おすすめ記事