当前位置: 首页 - 智能 - 浅谈分散式事务

浅谈分散式事务

2025-01-04 智能 0

浅谈分散式事务

分散式开发给我们带来了诸多好处,但同时也给我们带来了很多问题,诸如session共享问题,事务问题等,今天就说一下分散式事务解决方案。

学习之前,我们需要介绍一下前提知识:

丛集:所有的服务器做同一件事【可能是专案的一个功能】。

分散式:多个服务,做不同的事,完成同一专案。

事务:ACID-原子性、一致性、隔离性、永续性。

一、 分散式的业务场景

1 、如何高效完成各个分散式系统的协作

通过讯息伫列来达到异步解耦的效果,减少了程式之间的阻塞等待时间,资源浪费。

2、讯息的弊端?如何解决?

讯息伫列的问题在于不确定性,不能绝对保证讯息的准确到达,所以要引入延迟、周期性的主动轮询,来发现未到达的讯息,从而进行补偿。

二 讯息伫列简介

讯息伫列,也叫讯息中介软件。讯息的传输过程中,讯息储存在讯息容器中。 讯息伫列都解决了什么问题?

1、 异步

如图,以支付功能为例,我们写入资料,传送简讯通知,更新快取,需要600ms,再加上网络等原因,使用者在页面停留时间过长,体验很差,讯息伫列是异步的,大大省去了同步的时间。

2、并行

讯息伫列是并行工作的,可以同时传送通知,和更新快取,大大提高了效率

3、解耦

如图上如果程式都耦合在一起,一个步骤卡住,其后所有步骤都无法进行,而讯息伫列可以解耦,让模组与模组分割,从而带来最少的损失,如图,即使传送通知卡住了,也不会影响前端页面的显示。有朋友可能会问,那更新快取都坏了,前端显示还正常,不会影响程式正常执行吗 ,答案是不会,不知道大家注没注意过生活中的一个场景,在抢火车票的时候,明明还显示有2张票,购买的时候却被告知,以无票,这就是典型的更新快取与写入数据库断链,不过这个影响不太。

4、排队

伫列是前进先出的模式,解决了并发带来的相应问题

5 弊端:不确定性和延迟

解决方案:最终一致性,换会时间,提高效率!

讯息伫列的讯息模式(两种)

点对点

连线两端,点对点,一端叫生产者,一段叫消费者,生产者只管产出讯息,消费者只管接受讯息,中间交给伫列处理

订阅

即一生产者对应多消费者,可以理解为群发。

今天的讯息伫列就先聊到这,希望对正在学习的你有些帮助

标签: 智能制造未来发展趋势ai 人工智能人工智能ai机器人watch智能手表app下载介绍智能家居200字

上一篇:微信全面支持小号注册科学松鼠会探讨社会影响

下一篇:探索视觉语言纽约摄影学院教材中的艺术与技术融合

相关推荐
推荐资讯
热门文章