負荷がかかって起動したときに仮想ハングするasp.netコアアプリケーションで問題が発生しました。一度起動すると、アプリケーションは負荷を問題なく処理できます。すべての同時リクエストに対して初期化が行われているように感じます。他の誰かが同様の行動を経験していますか?Asp.Netロード時に起動したときのコアのパフォーマンスの問題
テストシナリオ:
-
がに任意の開始前
- の通知要求が始めるサービスが、非常に長い遅延を開始する50の同時タスク
- でサービスをヒットテストアプリケーションを起動し
- 終了し、ほとんどがタイムアウトします。
一時的な回避策として、私はサブセルを抑制するミドルウェアを作成しました非常に最初のものが終わるまで、要求を要求する。これにより、asp.net mvcは大量の要求を処理する前に初期化されます。この特定のアプリは、EFコアを持つasp.netコア1.1(Web API)です。
こんにちは、同じ問題が発生しました。作成したミドルウェアについて詳しく説明できますか?私はそれを実装する良い方法を見ることができません...そして、あなたがその理由を見つけたなら、本当にそれを聞いて嬉しいです!ありがとう – Gouffe
@Gouffe私はasp.netのコアスループットに関する問題に私のハックを投稿しました:https://github.com/aspnet/KestrelHttpServer/issues/1807#issuecomment-306329090 問題は本当に解決されずに閉じられました。私はそれをkestrelやef coreなどに追跡することができませんでした。これは、同時の要求に気をつけていない高価な初期化で、依存関係を使用しているように感じます。 – Kevin
リンクをありがとう、残念ながら、それは私の問題を解決しません。私は初期化の問題を抱えていますが、無作為にasp.netのコアプロセスはまだ解明されていない状態で100%cpuになります。とにかくありがとう、非常に興味深い回避策! – Gouffe