TI 2PC スレッド プール
トランザクション インテグレーター (TI) の 2 フェーズ コミット (2PC) スレッド プールは、COM+ ユーザー スレッド プールとは異なります。 TI 2PC スレッド プールは、2PC トランザクションにのみ使用されます。 スレッドは事前に作成され、1 つのプロセスが Microsoft 分散トランザクション コーディネーター (DTC) と対話して、トランザクションとcommit
トランザクションを処理prepare
します。 これにより、2PC トランザクションごとにスレッドの作成と破棄が排除され、パフォーマンスが向上します。
既定の最大スレッド設定
大量の 2PC トランザクションが処理されない限り、このプールへの過剰な負荷について心配する必要はありません。 トランザクションが非常に長くなった場合prepare
commit
にのみ、DTC との対話をキューに入れる可能性があります。
各 CPU の既定の最大スレッド数は 20 です。
各 CPU の既定の最大アクティブ スレッド数は 19 です。
各システムの既定の最大スレッド数は 80 です。
レジストリの場所に TEXT 文字列値を追加することで、既定の量を調整できます。
HKLM\Software\Microsoft\Cedar\Defaults\Threads
IOPortPoolFactor=20
IOPortActive=19
ThreadPoolMax=80
値を指定するための規則
値の指定には、次の規則が適用されます。
すべての値は 0 より大きくする必要があります。
IOPortPoolFactor は、 >= IOPortActive + 1 である必要があります。
ThreadPoolMax は、 = IOPortPoolFactor である >必要があります。
注意事項
スレッドを割り当てすぎると、Windows でリソースが不足し、COM+ と Windows で予期しない動作が発生する可能性があります。