TI 2PC 线程池

事务集成商 (TI) 两阶段提交 (2PC) 线程池不同于 COM+ 用户线程池。 TI 2PC 线程池仅用于 2PC 事务。 线程是预先创建的,单个进程与 Microsoft 分布式事务处理协调器交互, (DTC) 来处理 preparecommit 事务。 这通过消除每个 2PC 事务的线程创建和销毁来提高性能。

默认最大线程设置

除非处理了大量 2PC 事务,否则不必担心此池负担过重。 仅当事务变得非常长或commit时间过长时prepare,才会排队与 DTC 交互。

  • 每个 CPU 的默认最大线程数为 20。

  • 每个 CPU 的默认最大活动线程数为 19。

  • 每个系统的默认最大总线程数为 80。

    可以通过向注册表位置添加 TEXT 字符串值来调整默认数量:

    HKLM\Software\Microsoft\Cedar\Defaults\Threads

  • IOPortPoolFactor=20

  • IOPortActive=19

  • ThreadPoolMax=80

指定值的规则

以下规则适用于指定值:

  • 所有值必须大于零。

  • IOPortPoolFactor 必须为 >= IOPortActive + 1。

  • ThreadPoolMax 必须为 >= IOPortPoolFactor。

注意

分配过多的线程可能会导致 Windows 耗尽资源,这可能会导致 COM+ 和 Windows 中出现不可预知的行为。

另请参阅

长时间运行的事务程序
事务集成器性能指南