RPC 状態情報の有効化
2 つの異なるレベルの RPC ランタイム状態情報を収集できます。それは、サーバーの 情報と、フル 情報です。 デバッガーまたは DbgRpc を使用して状態情報を分析する前に、この情報収集を有効にする必要があります。
サーバーの状態情報の収集は非常に軽量です。 RPC 呼び出しあたり約 100 台のマシン命令のコストが発生し、パフォーマンス テスト中でも検出可能な負荷が発生しません。 ただし、この情報を収集するとメモリが使用されるため (RPC サーバーあたり約 4 KB)、既にメモリ不足が発生しているコンピューターでは推奨されません。 Server 情報には、エンドポイント、スレッド、接続オブジェクト、およびサーバー呼び出し (SCALL) オブジェクトに関するデータが含まれます。 これは、ほとんどの RPC の問題をデバッグするのに十分です。
完全な状態情報の収集は、より負荷がかかります。 これには、Server レベルで収集されたすべての情報が含まれます。さらに、クライアント呼び出し (CCALL) オブジェクトも含まれます。 完全な 状態情報は通常必要ありません。
個々のコンピューターで状態情報を収集できるようにするには、グループ ポリシー エディター (Gpedit.msc) を実行します。 ローカル コンピューター ポリシーで、コンピューターの構成/管理用テンプレート/システム/リモート プロシージャ コールに移動します。 このノードの下に、RPCトラブルシューティング状態情報の維持 項目が表示されます。 そのプロパティを編集すると、次の 5 つの状態が表示されます。
なし
状態情報は保持されません。 コンピューターでメモリ不足が発生している場合を除き、これはお勧めしません。
サーバー
サーバー 状態情報が収集されます。 これは、1 台のコンピューターで推奨される設定です。
完全
完全な状態情報が収集されます。
Auto1
RAM が 64 MB 未満のコンピューターでは、これは Noneと同じです。 64 MB 以上の RAM を搭載したコンピューターでは、これは Serverと同じです。
Auto2
128 MB 未満の RAM を搭載した Windows Server 2003 を実行しているコンピューター、または任意の Windows XP コンピューターでは、これは Noneと同じです。 128 MB 以上の RAM を搭載した Windows Server 2003 コンピューターでは、これは Serverと同じです。
これが既定値です。
ネットワーク接続された一連のコンピューターでこれらのレベルを同時に設定する場合は、グループ ポリシー エディターを使用して、マシン ポリシーを優先するマシンのセットにロールアウトします。 ポリシー エンジンは、必要な設定が優先されるマシン セットに反映されるように注意します。 Auto1 レベルと Auto2 レベルは、オペレーティング システムと各コンピューター上の RAM の量が異なる可能性があるため、この場合に特に便利です。
RPC のセキュリティ
RPC のセキュリティと使用に関するガイドラインの一般的な情報については、「セキュリティで保護された RPC クライアントまたはサーバーの作成