我刚刚开始使用 TransactionScope,我发现总会遇到一些意想不到的事情,需要永远调试。
我认为拥有这些的综合列表对于那些“奇怪的错误”情况非常有用,并且可以扩展我们对平台中奇怪现象的了解。
关于我将如何使用事务范围的一些上下文:
最佳答案
我头顶上有两件事:
http://support.microsoft.com/kb/899191 (允许入站和出站,不需要相互认证通常是最安全的选择)。使用 DTCPing 解决 dtc 实例之间的连接问题,如下所述:http://support.microsoft.com/kb/306843
您希望事务尽可能轻量级,dtc 引入了大量开销。您还希望事务尽可能短,因此只在应用程序服务器上而不是在 Web 服务器上引入它们。使应用服务器和数据库之间的网络跳跃尽可能小和尽可能快,通过不同于应用服务器和数据库之间的连接在 Web 和应用服务器之间发送网络流量,并使最后一个快速尖叫,可笑的短连接。
如果您有多个应用程序服务器,您可以考虑在服务器上运行一个 msdtc 实例(例如,在数据库或其中一个应用程序服务器上)并从所有应用程序服务器远程使用它,而不是每个应用程序服务器都运行自己的,但是我不知道这有什么额外的好处。
关于.net - 使用 TransactionScope 和 MS DTC 时的常见问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1759163/