【发布时间】:2016-10-24 06:37:41
【问题描述】:
我试图让 WebAPI 2.2 自托管在 Linux 环境中,这可以通过 Mono 完成,问题是我正在使用分布式事务的事务范围,那么它 (DTC) 在非 Windows 平台上是否支持?如果没有,是否有任何解决方法或替代方法可以在没有 DTC 的情况下实现 2pc?
【问题讨论】:
标签: .net linux transactionscope msdtc 2phase-commit
我试图让 WebAPI 2.2 自托管在 Linux 环境中,这可以通过 Mono 完成,问题是我正在使用分布式事务的事务范围,那么它 (DTC) 在非 Windows 平台上是否支持?如果没有,是否有任何解决方法或替代方法可以在没有 DTC 的情况下实现 2pc?
【问题讨论】:
标签: .net linux transactionscope msdtc 2phase-commit
MSDTC 仅在 Windows 上受支持。 2PC 的替代方案是实现消息队列事务。使用这种方法,您可以将事务分开,一个用于使消息出队的行为,另一个用于持久存储,例如关系数据库或 NoSQL 解决方案(无论您的系统可能是什么)。使用这种方法,您必须考虑消息idempotency。
在此处了解有关此方法的更多信息:
https://lostechies.com/jimmybogard/2013/05/09/ditching-two-phased-commits/
【讨论】: