私の現在のアプリケーションは、Web 層 - アプリケーション層 - データベースの 3 層で構成されています。
100 人のユーザーでテストしたところ、アプリケーション層の CPU がほぼ 90% に達しているのに対し、Web サーバーとデータベース サーバーは問題なく動作していることがわかりました。
CPU使用率が高い原因となっているコードを特定できません。主にCRUD操作があります。入力を DTO の形式で取得し、それらを (エンティティ フレームワークを使用して) エンティティに転送し、データベースに追加/更新/削除します。Get 操作の場合、データを EF エンティティにフェッチし、それらを DTO に格納してから、DTO をクライアントに送信します。
DebugDiag を使用しようとしましたが、有用な情報を見つけることができませんでした。
サーバーの構成は次のとおりです。
Web サーバー (数量 = 1)プロセッサ Intel Xeon CPU X5675 @3.07 GHz 2.19 GHz
コア数 (仮想) 8
RAM 8GB
オペレーティング システム Windows Server 2012 Standard
プロセッサの種類 64 ビット
インストールされているソフトウェア NET Framework 4.5
アプリケーション サーバー (数量 = 1)プロセッサ Intel Xeon CPU X5675 @3.07 GHz 3.07 GHz
コア数 (仮想) 8
RAM 8GB
オペレーティング システム Windows Server 2012 Standard
プロセッサの種類 64 ビット
インストールされているソフトウェア NET Framework 4.5
DB サーバー (数量 = 1)プロセッサー Intel Xeon CPU E7-4830v2 @ 2.20 GHz 2.19 GHz
コア数 (仮想) 8
RAM 8GB
オペレーティング システム Windows Server 2012 Standard
プロセッサの種類 64 ビット
インストールされているソフトウェア Microsoft SQL Sever 2014