MassTransitamp;amp;Sagas分布式服务开发ppt分享

saga,与分布式相关,最早被定义在Hector Garcia-Molina和Kenneth Salem的论文"Sagas"中。这篇论文提出了一个saga机制来作为分布式事务的替代品以解决长时间运行的分布式事务(long-running process)的问题。这篇论文认为业务过程经常由很多步骤组成,每个步骤都涉及一个事务,如果将这些事务组成一个分布式事务,就可以实现总体一致(overall consistency )。然而在长时间运行的分布式事务中,使用分布式事务会影响效率和系统的并发处理能力,因为在执行分布式事务的时候会有锁产生。

saga通过确保每一个业务过程都有修正事务(compensating transaction)来减少了系统对分布式事务的依赖。在这种方式下,如果业务过程遇到了错误的情况并且无法继续,它就可以执行修正事务来修正已经完成的步骤。这种在业务流程中去撤销已经完成的工作的方式保证了系统的一致性。

saga这个名词通常被用在CQRS的讨论中,它是指一段在限定上下文(bounded contexts )和聚合(aggregates)之间起协作和路由(coordinates and routes )消息作用的代码。这里更倾向于使用Process manager这个词来表示MassTransit中的sagas。

 

 

 

 

原文地址:http://www.cnblogs.com/qkbao/p/6952654.html


.NET社区新闻,深度好文,微信中搜索dotNET跨平台或扫描二维码关注

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/324325.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

全局过滤器

自定义全局过滤器

最长回文子串(Longest Palindromic Substring)

转载自 最长回文子串(Longest Palindromic Substring)——三种时间复杂度的解法 子串:小于等于原字符串长度由原字符串中任意个连续字符组成的子序列 回文:关于中间字符对称的文法,即“aba”(单核)、“cabbac”(双核)…

小白入门级的视频剪辑软件

大家好,我是雄雄,欢迎关注公众号【雄雄的小课堂】。前言昨天,给班级群里面分享了个视频剪辑软件——剪映PC端,并交代同学们,剪辑视频可以以它来入手,我大致的看了看,PC端的剪映功能基本上能满足…

DDD理论学习系列(12)-- 仓储

1. 引言 DDD中Repository这个单词,主要有两种翻译:资源库和仓储,本文取仓储之译。 说到仓储,我们肯定就想到了仓库,仓库一般用来存放货物,而仓库一般由仓库管理员来管理。当工厂生产了一批货物时&#xf…

Windows 通过 SecureCRT 8.x 上传文件到Linux服务器

转载自 Windows 通过 SecureCRT 8.x 上传文件到Linux服务器 1、SecureCRT 连接 Linux 服务器,这一步操作简单: 2、连接并登录成功后,直接在连接成功的页签上 右键 -> Connect SFTP Session 打开SFTP窗口: 3、在新的SFTP页签…

没有回家的等于没过年

大家好,我是雄雄,欢迎关注公众号【雄雄的小课堂】。今天是农历2021年正月初二,新的一年,祝大家牛年大吉,身体健康,万事如意!今年由于各方面原因并未回家过年,感觉没回家等于没过年&a…

.NET Core引入性能分析引导优化

“性能分析引导优化(Profile Guided Optimization,缩写PGO)”是一项原生编译技术,可用于生成高度优化的代码。它通过一个两步编译过程实现优化——用第一步记录相关执行信息,然后第二步用那些信息构建一个改进过的二进…

手把手教你搭建Maven项目

大家好,我是雄雄,欢迎关注微信公众号【雄雄的小课堂】。今天给大家分享的是“手把手教你买基金”,奥!!不对,不好意思,是“手把手教你使用idea搭建Maven项目”!前言大家都知道&#x…

实例!使用Idea创建SSM框架的Maven项目

大家好,我是雄雄,欢迎关注微信公众号【雄雄的小课堂】。前言书接前文,昨天带着大家下载且配置了maven,以及在idea中创建maven项目,今天,我们就结合ssm框架,在idea中实现一个增删改查案例。昨天的…

如何给你的Idea换一个好看漂亮的主题

大家好,我是雄雄,欢迎关注微信公众号【雄雄的小课堂】。前言大家都知道,idea里面自带两种主题样式,一种是灰色的,另一种是黑色的。你有没有想过换个其他的主题颜色用用呢?如果想,那么今天&#…

腾讯游戏使用Microsoft Service Fabric案例

本文转载自公众号-云就该这么玩,微软官方的地址链接:https://customers.microsoft.com/en-us/story/tencent-telecommunications-azure-service-fabric-windows-server-en 根据研究公司Newzoo的报告估计,全球游戏收入在2017年将达到1080亿美…

div中的table内容过多时不超出div的范围解决方法

转载自 div中的table内容过多时不超出div的范围解决方法 问题描述: 在做界面展示时,table的内容过多,超出div的大小,看着table的边框盖过了div的边框,不美观。 问题解决: 因为页面整体的布局美工都设计…

属性编辑器未在PropertyEditorManager中注册?

大家好,我是雄雄,欢迎关注微信公众号【雄雄的小课堂】。前言好不容易将代码都写完了,结果一运行,报错!!HTTP Status 500 - Unable to convert string "${book.btime}" to class "java.util.…

DDD理论学习系列(13)-- 模块

1. 引言 Module,即模块,是指提供特定功能的相对独立的单元。提到模块,你肯定就会想到模块化设计思想,也就是功能的分解和组合。对于简单问题,可以直接构建单一模块的程序。而对于复杂问题,则可以先创建若干…

快速搭建Springboot项目的两种方式!!

大家好,我是雄雄,欢迎关注微信公众号【雄雄的小课堂】。前言Springboot的特点就是简单、快速和方便,使用idea不到一分钟就可以快速搭建springboot项目,并且,在这里,你不用写spring的那些乱七八糟的xml文件&…