IIS 7 では、asp.net 4.0 Web サイトごとに 1 つの CPU コアしか使用できないと聞きました。より多くの CPU コアを使用することは、Web ファームの領域に入ることを意味します (結果として、セッション管理はそれぞれ行う必要があります)。しかし、これを確認する参考文献は見つかりませんでした。
セッションがまだインプロセスである場合、Web サイトごとに使用できる CPU コア数に制限はありますか? 参照はありますか?
絶対に間違っています。
IIS7 と asp.net は、すべての CPU とサーバーの能力を使用します。それに、asp.net/iis と並行して実行され、すべての CPU と (すべての) メモリも使用する SQL サーバーも含めます。また、システム スレッドを作成すると、別の CPU を使用する可能性もあります。
おそらく「聞いた」ことは、セッションがページの非同期処理をブロックしているということです。これは完全に悪いわけではなく、多くの場合に役立ちます。繰り返しますが、これは 1 つの CPU を使用するという意味ではなく、同じサイトの呼び出しが同期している (一方が他方を待機する) ということだけです。
セッションについて一言。個人的には、カスタムメイドのセッション ハンドラーに完全に置き換えましたが、初心者のサイトや小規模なサイトでは、呼び出しを同期するのに役立つため、現在のセッションが最適です。現在のセッション モジュールがなければ、手動でケースごとに同期を処理する必要があります。これはそれほど簡単ではありません。そうしないと、結果は通常、同じデータの 2 回および 3 回の送信になります (これらはすべて経験によるものです)。ここで、Web ガーデン用にサイトを設計し、適切に設計すると、呼び出しの同期を処理し、高速かつ正確に機能するようになります。
セッション ブロッキングについては、次を参照してください。
同じセッションを共有している別の Web アプリを処理中に Web アプリがブロックされた
ASP.Net のセッションを完全に置き換える ASP.NET の
ボトルネックを特定するのに役立つ perfmon カウンターは何ですか?
Web メソッドを非同期にしようとしています