MassTransit&Sagas分布式服务开发ppt分享

 

saga,与分布式相关,最早被定义在Hector Garcia-MolinaKenneth Salem的论文"Sagas"中。这篇论文提出了一个saga机制来作为分布式事务的替代品以解决长时间运行的分布式事务(long-running process)的问题。这篇论文认为业务过程经常由很多步骤组成,每个步骤都涉及一个事务,如果将这些事务组成一个分布式事务,就可以实现总体一致(overall consistency )。然而在长时间运行的分布式事务中,使用分布式事务会影响效率和系统的并发处理能力,因为在执行分布式事务的时候会有锁产生。
saga通过确保每一个业务过程都有修正事务(compensating transaction)来减少了系统对分布式事务的依赖。在这种方式下,如果业务过程遇到了错误的情况并且无法继续,它就可以执行修正事务来修正已经完成的步骤。这种在业务流程中去撤销已经完成的工作的方式保证了系统的一致性。
saga这个名词通常被用在CQRS的讨论中,它是指一段在限定上下文(bounded contexts )和聚合(aggregates)之间起协作和路由(coordinates and routes )消息作用的代码。这里更倾向于使用Process manager这个词来表示MassTransit中的sagas
MassTransit&Sagas分布式服务开发ppt分享_第1张图片

 

  MassTransit&Sagas分布式服务开发ppt分享_第2张图片

MassTransit&Sagas分布式服务开发ppt分享_第3张图片

 

 MassTransit&Sagas分布式服务开发ppt分享_第4张图片

MassTransit&Sagas分布式服务开发ppt分享_第5张图片

MassTransit&Sagas分布式服务开发ppt分享_第6张图片

MassTransit&Sagas分布式服务开发ppt分享_第7张图片

MassTransit&Sagas分布式服务开发ppt分享_第8张图片

MassTransit&Sagas分布式服务开发ppt分享_第9张图片

MassTransit&Sagas分布式服务开发ppt分享_第10张图片

MassTransit&Sagas分布式服务开发ppt分享_第11张图片

MassTransit&Sagas分布式服务开发ppt分享_第12张图片

MassTransit&Sagas分布式服务开发ppt分享_第13张图片

MassTransit&Sagas分布式服务开发ppt分享_第14张图片

MassTransit&Sagas分布式服务开发ppt分享_第15张图片

MassTransit&Sagas分布式服务开发ppt分享_第16张图片

MassTransit&Sagas分布式服务开发ppt分享_第17张图片

MassTransit&Sagas分布式服务开发ppt分享_第18张图片

MassTransit&Sagas分布式服务开发ppt分享_第19张图片

MassTransit&Sagas分布式服务开发ppt分享_第20张图片

MassTransit&Sagas分布式服务开发ppt分享_第21张图片

MassTransit&Sagas分布式服务开发ppt分享_第22张图片

 

你可能感兴趣的:(MassTransit&Sagas分布式服务开发ppt分享)