ASP.NET MVC app受け入れるものfile upload(最大80mb)を作成しましたresult pooling implemented by AsincController。Windows 2008 R2 IIS7.5 .NET4でホストされています。サーバー2コア2.6GHZ、2GB RAM、高速HDD。
Webサイトには多くのユーザーがいて、パフォーマンスモニターASP.NET Requests/Sec ~15はRequest Current ~270
数分後、ASP.NETが起動queuing requestし、ASP.NET Request Queuedカウンターが大きくなり始め、アプリケーションが非常に遅くなります。私はほぼ1か月間問題を探し、コードのプロファイリングを試みましたが、パフォーマンスの問題やメモリリークはありませんでした。増加maxWorkerThreads to 400し、maxIoThreads to 400。設定maxConcurrentRequestsPerCPU to 5000しMaxConcurrentThreadsPerCPU to 0ますが、どちらも役に立ちませんでした。
役立つと思われることの1つは、アプリプールの最大ワーカープロセスを2つまたは3つのプロセスに増やし、アプリプールをWebガーデンにすることです。その後、Request Currentは約350にジャンプし、リクエストのキューイングは行われません。しかし、Web Gardenは、ここでは言及しないいくつかの新しい問題を紹介します。
IISプールWebガーデンでアプリを実行せずにアプリケーションのパフォーマンスを向上させる方法について提案を投稿してください。