web-dev-qa-db-ja.com

Windowsネットワーク共有でのディレクトリリストの高速化

私は定期的に何千ものファイル(おそらく名前と変更時間)をスキャンするソフトウェアを使用しています。ファイルはネットワーク共有を介してアクセスされるため、これにはかなりの時間がかかります。どちらのマシンもWindowsXPSP3を実行しています。ディレクトリスキャンを高速化するための簡単で信頼性の高い調整はありますか?

2
VolkerK

数百または数千のファイルまたはサブディレクトリ(またはディレクトリごとに数十のファイル、すべて同じ名前)を含むディレクトリで作業している場合は、8.3DOS互換のファイル名との衝突が発生している可能性があります。 8.3ファイル名の作成を無効にする によってディレクトリ列挙のパフォーマンスを向上させる方法についての説明が記載されたMicrosoftKBの記事があります。

最終アクセスタイムスタンプを無効にする パフォーマンスを向上させることもできます。これにより他のプログラムで問題が発生する可能性はわずかですが、問題に気付いた場合は、最終アクセスタイムスタンプを簡単に再度有効にすることができます。

これらの変更をネットワーク共有をホストしているマシンだけに適用することで回避できる場合がありますが、安全のために両方のマシンに変更を適用することもできます。

両方のマシンでウイルス対策プログラムを実行している場合は、両方のマシンで一時的にオンアクセススキャンを無効にして、パフォーマンスが向上するかどうかを確認する必要があります。私の経験では、McAfeeアンチウイルスは、ファイルに触れるたびに異常なパフォーマンスヒットを引き起こしますが、他の一部のアンチウイルスアプリ(CAやAvastなど)は、オンアクセススキャンが有効になっていても、それほど深刻なパフォーマンスヒットはないようです。ほとんどのウイルス対策プログラムでは、オンアクセススキャンから除外するディレクトリを指定できます。

1
rob

いくつかのアイデアがすぐに思い浮かびます。

  • アプリケーション内でファイルデータをローカルにキャッシュできるかどうかを確認します。そうすれば、スキャンを1回実行するだけで済みます。

  • ネットワークの速度をアップグレードします。ギガビットイーサネットPCIカードは$ 30- $ 40 CAD私の地域です。ルーターが必要な場合は、さらに$ 100です。ただし、他のコンピューターが1台しかない場合は、1台のコンピューターを実行する必要があります。 2つの間のクロスオーバー(P2P)cat6イーサネットケーブルの。

  • 速度は、問題の2台のコンピューターの速度の関数でもある可能性があります。 CPU?メモリの量と速度は?ハードドライブのどのモデルですか?

1

同様の問題があります。リモートマシンでFTPサーバーを実行し、代わりにFTPドライブマッピングをマッピングすることを考えていました。まだ試していませんが、パフォーマンスが向上すると思います。そうでない場合は、FTPクライアントを使用してアクセスし、Microsoftドライブマッピングを完全に放棄する可能性があります。 NULL Ftp Server を使用してシーンリオを試してみました。

0
djangofan

有線でのファイルへのアクセスは、ローカルディスクにアクセスする場合よりも常に遅くなります。スキャンをローカルで実行するように設定すると、スキャンのパフォーマンスを向上できる場合があります。ワイヤーを介してファイルをプルし始めると、アクセスされているファイルの数が原因で、これらのタイプの速度低下に気付くようになります。

同じスキャンをリモートで実行する場合は、各ファイルを転送/アクセスするための接続をセットアップする必要があります。そのため、おそらく非常に低速です。

ファイルへのアクセスに使用しているプロトコルを微調整することは可能ですが、プロセスをローカルスキャンに移行するだけで、ネットワークスキャンよりもはるかに劇的な結果が得られます。

ここで注意すべき点として、多くのエンタープライズクラスのバックアップソリューションには、これとまったく同じ目的を果たすローカルにインストールされたコンポーネントも含まれています。ファイルは、ネットワークを介してプッシュとプルで転送できます。これは大幅な改善です。

0
Axxmasterr