transactions - MSDTC(分布式事务协调器)首次启动缓慢

标签 transactions msdtc distributed-transactions

我注意到非常简单的分布式事务在第一次运行时需要很长时间(3-4 秒)才能完成。但是如果再次调用相同的事务范围,速度会快得多(30 毫秒)。似乎 MSDTC 在一个小时后进入休眠状态。一小时后,下一个要运行的事务将需要 3-4 秒。

我预计网站上的流量不会很大,因此很可能在各个交易之间会经过几个小时。

我认为这可能是由于 MSDTC 服务被设置为手动启动,但我已确保 MSDTC 服务都自动运行。

猜测某处有一个注册表设置,但我没有在 MSDN 中找到任何东西。

谢谢!

最佳答案

MSDTC 运行 COM 组件来处理事务,并在 20 分钟(我相信是默认值)后从内存中卸载这些组件。您在第一笔交易中看到的缓慢是环境旋转并将事物加载到内存中。

关于transactions - MSDTC(分布式事务协调器)首次启动缓慢,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/869577/

相关文章:

java - 如何修复身份始终返回 0 的 HSQL DataSource + TxM

sql-server-2012 - SQL Server 和 Websphere MQ 的分布式事务

c# - 了解 Windows 中的 MSDTC

c# - RegistryKey Key.GetValue ("keyName") 在单元测试 c# 项目中返回错误值

hibernate - Hibernate 中的托管 vs jta session 范围

.net - 我可以防止 WCF 在抛出错误时回滚事务吗?

sql-server - 将 SAVE TRANSACTION 与链接服务器一起使用

c# - 在事务中使用 SqlCommand 时,我应该调用 Parameters.Clear 吗?

sql - 强制事务从另一个连接提交?

spring - @Transactional 和 JPA 对象参数