Web アプリのパフォーマンスの問題

Web アプリのパフォーマンスの問題

5 回または 10 回のリクエストごとにハングする Web サイトがあります。正常に動作しているときは高速に動作しますが、ブラウザーを数分間放置してからリンクをクリックすると、応答せずにハングします。ユーザーはブラウザーで数回更新ボタンを押す必要があり、その後再び高速に動作します。

私は IIS 7.0 (Windows Server 2008) 上で .NET 3.5、ASP.NET MVC 1.0 を実行しています。Web アプリは、同じインスタンスでローカルに実行されている SQLServer 2005 DB に接続します。DB には約 300 MB の RAM があり、残りは Web 要求用に空いていると思われます。

これは GoGrid のクラウド サーバーでホストされており、このインスタンスには 1 GB の RAM と 1 つのコアがあります。これはそれほど多くないことはわかっていますが、現在このサイトを使用しているのは私だけであり、それでもハングが発生します。

トラブルシューティングが難しいことは承知していますが、IIS 構成の問題の可能性や、これらのテクノロジを使用した場合の 1,000 ユーザーあたりの「大まかな」平均ハードウェア要件などについて、正しい方向を指し示してくれる人がいたらと思っています。Web サーバーの場合、ビジー状態であっても応答が得られるように、最低でも 2 つのコアが必要です。または、Slashdot の人たちが正しく、Windows を使用している私が馬鹿なのかもしれません (笑)。ただし、私の経験では、これは通常、私のアルゴリズム/構成エラーであり、基盤となるテクノロジのせいではありません。

どのようなご意見でも歓迎いたします。

答え1

実際のサーバーでアプリを実行して、そこでハングするかどうかを確認してみましたか? アプリまたは OS に問題があると考える前に、「クラウド」コンピューティング プラットフォームを疑ったほうがよいでしょう。SQL に 300 MB の RAM があると言うのはなぜですか? 使用している RAM はそれだけですか? 仕様には、1 GB の RAM を搭載したサーバーがあると書かれています。

答え2

Jim Bが指摘したように、展開する前にLABでテストしておく必要があります。次の点を確認してください。

  1. IIS - アプリに独自のアプリケーション プロセス スペースがあることを確認します。

  2. asp.net でセッション状態を確認します。

  3. アプリ (IIS) と DB 間の接続を確認してください。クラウド接続が切断されている可能性があります。

  4. IIS のイベント ログを見ることができますか? それを見てください。

答え3

提供された情報から判断すると、システム上で Web サーバーとデータベースを実行しているため、最も可能性の高い問題は VM 上の単一のコアであると思われます。ホスティング会社がコアの追加/削除を許可している場合は、2 番目のコアを追加してパフォーマンスを再度確認してください。

関連情報