.NET環境におけるノードカウントの計算
.NET エージェントは、IIS サーバーで監視されるアプリケーションの構成によってノードを動的に作成します。IISサーバーは、監視される各IISアプリケーションのインスタンスを複数作成できます。各インスタンスに、.NET エージェントがノードを作成します。たとえば、IISアプリケーションが5つのインスタンスを持っている場合、.NETエージェントは各インスタンスに1つずつ、つまり5ノード作成します。
特定のIISアプリケーションのインスタンスの最大数は、次の図で示されているように、アプリケーションプール用に構成されるワーカープロセスの数によって決まります。
図は、3 つのアプリケーションプールを示しています。AppPool-1、AppPool-2、AppPool-3 は次のような特徴を持っています。
- AppPool-1 と AppPool-3 のワーカープロセス(Web ガーデン)は最大 2 つで、含まれるアプリケーションはそれぞれ 2 つ(AppA、AppB)と 1 つ(AppF)です。
- AppPool-2 はワーカープロセスが 1 つで、3 つのアプリケーションがあります。
各AppPoolのノード数を特定するには、アプリケーションの数と最大ワーカープロセス数を乗算します。これらと、Windows サービスのノードまたはスタンドアロン アプリケーション プロセスを合計します。
この例では、9 つの AppPool ノードが作成されます。Windows サービスに対するノードを追加すると、合計 10 ノードになります。計算は以下のとおりです。
AppPool-1: 2 (applications) * 2 (max number of worker processes) = 4
AppPool-2: 3 (applications) * 1 (max number of worker processes) = 3
AppPool-3: 1 (application) * 2 (max number of worker processes) = 2
Windows Service or standalone application process = 1
------
Total: = 10特定の.NETアプリケーション/AppPoolのために起動されるCLRの数を確認する方法:
- IIS マネージャを開き、その AppPool に割り当てられたアプリケーション数を表示する。
- AppPool が Web ガーデンとして実行されるよう構成されているか確認する。これは、前の例で説明されているように、この AppPool から来ている .NET ノードの数の乗数となる。
また、「View Applications in an Application Pool (IIS 7)」も参照してください。