4

困惑しているプロダクションパフォーマンスの問題があります。私は誰かが似たようなものを見たか、少なくともいくつかのトラブルシューティングテクニックを持っていることを望んでいます。

共有ネットワークドライブからファイルを取得する継承されたasp.netWebアプリケーションをサポートしています。トラブルシューティングのために選択した1つの特定のフォルダー[これをFOLDERAと呼びます]には、約300MBのファイルと複数のサブフォルダーが含まれています。FOLDERAは、このアプリケーションでは大きいと見なされます。最近から、実稼働ネットワーク共有のFOLDERAからファイルを取得するときに、ユーザーのパフォーマンスが低下しています。コードをasp.netアプリケーション内のGetDirectoriesメソッドに絞り込みました。

RootDir.GetDirectories("*", SearchOption.AllDirectories);

本番環境では、FOLDERAの読み取りには約8〜10秒かかります。最近のパフォーマンス低下の前は、約1秒でした。テスト環境では、同じ量のデータで1〜2秒かかります。

ユーザーが問題に気付いた同じ週末は同じ週末のネットワークであり、ハードウェアのアップグレードが発生したため、私の理論はネットワークの問題です。ただし、これをネットワークエンジニアに判断または証明する方法がわかりません。

何が起こっているのかについてのアイデアをいただければ幸いです。

4

1 に答える 1

0

大規模な共有ディレクトリでまったく同じ方法を使用して、パフォーマンスの問題なしに数千のpdfファイル(〜80000、サイズは関係ありません)を抽出してインデックスを作成しました(1〜2秒)

開発環境と本番環境の間のファイル共有から外部プログラムを使用してIOのベンチマークを試み、理論を証明して、ソフトウェアの欠陥を排除し、インフラストラクチャスタッフに問題を渡すことができます。

一方、アプリケーションアーキテクチャに応じて、サーバー側のCacheDependencyを使用してこの情報を簡単にキャッシュできます。これがコア機能である場合、これによりパフォーマンスが大幅に最適化されます。

于 2010-09-15T16:47:25.357 に答える