私の要件は、Asp.Net Web アプリケーションで 2 秒未満で 100 個のサムネイルを読み込むことです。各画像の実際のサイズは約 800 KB です。そのため、Web ハンドラー メソッドを使用してその場で画像のサイズを変更しました (ここでは画像サイズを 8KB に縮小しました)。ここでは、96 のリクエストがサーバーに送信され、サムネイルが 4 秒未満で読み込まれることがわかりました。90% の確率でブロックで負けていることがわかりましたFirebug net タブで調べます。それで、96 リクエストから 1 つのリクエストに移行しました。したがって、Web ハンドラーは単一の要求を受け入れ、96 個のサムネイル画像を作成し、96 個のサムネイルを結合して大きな単一の画像にし、この単一の画像を出力ストリームに書き込みます。この場合、単一の画像の読み込みに約 6 秒かかることがわかりました。次に、Web ハンドラーでサムネイルを作成するために .Net スレッド プール メカニズムを使用しました。これにより、読み込み時間が 2.6 秒に短縮されました。サーバーの処理に実際にかかる時間は 1 秒以下であることがわかりました。残りの 1.6 秒が失われています。私の質問は以下のとおりです
処理時間が失われているのはどこですか。サーバー側かクライアント側か? サーバー側の場合、ボトルネックはどこですか? リクエストの処理時間とページの読み込み時間を特定するにはどうすればよいですか?
画像のサイズ変更を行うには、Web ハンドラーの方が適していますか?
- 代替ソリューションはありますか?
私のシステム構成は
プロセッサー - Intel Core - i7、RAM: - 4 GB
ウェブサーバー: IIS 7
OS:Windows7
私を助けてください