我已阅读过Udi的文章Life without distributed transactions。
MassTransit是否支持分布式事务? (以避免MassTransit上的重复问题,而不是通过代码手动检查)
答案 0 :(得分:4)
MassTransit有一个名为Courier的功能,它使用执行/补偿样式的路由滑动方法实现分布式事务。您可以在GitHub上看到代码示例:https://github.com/MassTransit/Sample-Booking
路由单将事务分解为一组按原子顺序执行的活动,并在路由单中记录补偿信息。如果活动出现故障,则先前完成的活动将得到补偿,以便部分交易不会保持打开状态。
这是进行分布式事务的基础,目前已在生产中的几个大型分布式事务处理应用程序中使用。
Courier用法的另一个好例子:https://github.com/phatboyg/Demo-Registration