spring事务原理与实现 如何使用消息队列解决分布式事务?
如何使用消息队列解决分布式事务?
有两种选择。
Scheme 1 Local message transaction table
生产者需要添加一个事务消息表。具体步骤如下:[1。生产者执行业务逻辑并将事务记录插入到消息表中。这两个操作在一个本地事务中
2。启动后台线程定期轮询消息表并将消息发送到消息队列
3。删除消息表中的消息,直到发送成功。
方案2需要消息队列支持,业务端提供回溯接口
1。生产端将准备好的消息发送到消息队列
2。在本地事务中,业务逻辑
3。根据执行结果确认或取消准备好的消息
4。消息队列将确保准备好的消息被确认或取消,并且消息队列将不断地向生产端请求执行结果,这要求生产端提供类似的回调函数。
在方案2中,消息队列取代了方案1中的消息表和后台线程轮询功能,但并非所有消息队列都支持此功能。支持Rocketmq。
方案1的开发工作量大,外部依赖性小
方案2的开发工作量小,但依赖于特定的消息队列。
人类什么时候能实现永生?大家觉得100年内能实现吗?
万物产生,发展,达到顶峰,最后衰亡。这就是事物发展的规律!就连太阳、地球、月亮甚至宇宙都不例外,更别说渺小的人类了
sql语句中用什么语句实现事务的回滚?
-启动事务begin tran-执行操作update accountsuusersexp set telphone=123456 where userid=14-执行错误事务回滚-如果事务提交正确,提交
亲自对你父亲说,我爱你,你工作很努力。时间过去了,再也不会回来了。不可能追求它,但要回忆它。回忆有时是痛苦的。这是我们记忆中的一种伤害,我们可以记住和支持它。
我妈妈说我小时候和他们一起去了上海。那时,我叔叔在上海工作,有机会去上海。我记得我年轻时的一件事,火车上发生的事。在晚上的火车上,每个人都饿了,吃不起一顿好饭。我们家买了一桶方便面。我记得我父亲把面条泡在外套里,让我先吃。面条是我和妈妈吃的。剩下的面汤爸爸一滴也没剩喝了,清楚地记得爸爸喝面汤的情况,双手屏住呼吸喝,怕浪费,爸爸也很饿,一家人吃了一桶方便面。当我想到我父亲让我们先吃饱,然后他才能吃剩下的,还有我父亲喝汤的行为时,我会永远记住这一点。我记得我去上海的时候。后来,父亲告诉我,当时上海很冷,我晚上发烧。我父亲很着急,买不起昂贵的药,所以他买了退烧药让我吃。我的烧得太厉害了,我也不太在意。我喝了药,烧慢慢退了,父亲的心也放下了。
但是当我父亲告诉我这件事的时候,他显然哽咽了,因为当时他吃退烧药的时候,父亲也很害怕,买不起别的药,只好给我,最后的效果很好。爸爸特别害怕让我吃退烧药。在爸爸心里,他永远不会忘记这一点。我对我父亲说没关系。现在不太好。现在生活条件好了,你不能不努力。现在我父亲见到我很高兴。他仍然像往常一样保护我。我父亲现在老了。将来,我会保护我的父母。让他们每天都快乐健康。
spring事务原理与实现 分布式事务的实现方式 spark和hadoop的区别
版权声明:本文内容由互联网用户自发贡献,本站不承担相关法律责任.如有侵权/违法内容,本站将立刻删除。