TI 2PC 线程池
事务集成商 (TI) 两阶段提交 (2PC) 线程池不同于 COM+ 用户线程池。 TI 2PC 线程池仅用于 2PC 事务。 线程是预先创建的,单个进程与 Microsoft 分布式事务处理协调器交互, (DTC) 来处理 prepare
和 commit
事务。 这通过消除每个 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 中出现不可预知的行为。