Azure ASP.NET Web サイトの http 要求がキューに入れられました

Azure ASP.NET Web サイトの http 要求がキューに入れられました

Azure にデプロイされた Web サイトのパフォーマンスはひどいです。負荷が増加すると、応答時間が数分にまで増加します。CPU 負荷はそれほど高くなく、40% 程度です (中規模のインスタンス (S2) を 1 つ実行しています)。

何度もデバッグした後 (原因がわかりませんでした)、リクエストがキューに入れられていることを示す「FREB」ログにようやく遭遇しました。

  1. AspNetStart データ1="GET", データ2="/profiel/aanvullen", データ3="" 13:48:44.279
  2. AspNetReqQueued 13:48:44.810
  3. AspNetReq がキューから削除されました 13:49:39.545
  4. AspNetAppDomainEnter Data1="/LM/W3SVC/xxxx/ROOT-1-xxxxx

Azure インスタンスはすぐに使用できるように「最適に」構成されているので、 や などの設定について心配する必要はないと考えていmaxconnectionましmaxConcurrentThreadsPerCPUた。このサイトではデータベースは使用されていませんが、2 つの異なる REST API を呼び出すため、そこでキューイングが発生すると考えていました。プロパティを確認してみましたwebrequest.ServicePoint.ConnectionLimitが、200 万 (または最大 int だったかもしれません) のような数値が出力されたのを覚えています。

CPU 使用率が低いため、Azure は新しいインスタンスを起動せず、別のインスタンスが役立つとは思えません。

基本的に2つの質問があります:

  1. この原因は何でしょうか / 何を変えるべきでしょうか?
  2. これをデバッグするにはどうすればよいでしょうか? Azure には非常に多くのグラフと設定があります。必要な情報を正確にどこで確認すればよいかわかりません。帯域幅がボトルネックになっているのか、特定の Web サービスに対するオープン リクエストの数、その他の何かなど。

関連情報