首页 > 其他分享 >分布式事务理解

分布式事务理解

时间:2023-05-19 09:48:15浏览次数:54  
标签:事务 seata 模式 理解 分布式系统 一致性 分布式

分布式系统:是一个硬件或软件组件分布在不同的网络计算机上,彼此之间仅仅通过消息传递进行通信和协调的系统。
分布式事务:是指事务的参与者、支持事务的服务器、资源服务器以及事务管理器分别位于不同的分布式系统的不同节点之上。
根据分布式系统CAP定理和base理论可知,分布式系统只能满足CP或者AP。
cap定理:c,一致性,a,高可用,p,分区容错
base理论:ba,基本可用,s,软状态,e,最终一致
分布式事务是解决分布式系统一致性的一种方案。
根据一致性的分类,衍生出如下解决方案:
强一致性解决方案:需要遵循XA协议,例如JAVA的JTA接口,seata的xa模式、二段提交、三段提交
弱一致性:TCC理论(常用框架ByteTCC,TCC-transaction,Himly),seata的tcc模式和at模式。
最终一致性:seata的saga模式、消息队列

标签:事务,seata,模式,理解,分布式系统,一致性,分布式
From: https://www.cnblogs.com/public-communion/p/17413995.html

相关文章

  • 深入理解之JavaScript之call, apply, bind方法
    在JavaScript中,call、apply和bind是Function对象自带的三个方法,这三个方法的主要作用是改变函数执行时的上下文,再具体一点就是改变函数运行时的this指向。Function.prototype.call()call()方法调用一个函数,其具有一个指定的this值和多个参数(参数的列表)。fun.call(thisArg,a......
  • mysql事务
    事务(mysql)第一章事务概念1、事务机制在程序开发过程中有着很大的作用。在现实生活中,经常进行转账操作,分为两个步骤:转入与转出,只有当两部分都完成才认为转账成功。2、如果其中任意操作异常没有执行成功,则会导致两账户的金额不同步,造成错误,为了避免上述错误,数据库引入事务。3、......
  • 彻底理解synchronized(转载)
    synchronized简介在学习知识前,我们先来看一个现象:publicclassSynchronizedDemoimplementsRunnable{privatestaticintcount=0;publicstaticvoidmain(String[]args){for(inti=0;i<10;i++){Threadthread=newThread(n......
  • 关于int main(int argc, const char * argv[])的理解
    命令行参数前面一个是int值,理论上后面一个char型的指针数组,每个字符型的指针都存贮一个字符串(很像shell命令,$#输出所有命令行参数个数,不包括命令本身,$*,输出所有命令行参数)argc命令行执行时输入字符串的个数,argv输出字符串的内容(输入都默认字符串类型)所以下面这个程序输入......
  • 产废单位EPM+SAP产废企业数字化管理解决方案——环保数字化转型利器
    哲讯产废单位EPM+SAP产废企业数字化解决方案随着环保部门对重点产废单位监管的日益加强,产废企业必须要做好内部危废转移管理。基于成熟的危废管理系统衍生产品“产废管理系统”,可以帮助产废企业规范化管理内部危废的转运与处置,轻松应对环保监管。系统设计遵循开放性原则,各系统采......
  • GRPC与 ProtoBuf 的理解与总结
    转载请注明出处:1.GRPC官网:https://www.grpc.io/gRPC官方文档中文版:http://doc.oschina.net/grpcRPC框架的目标就是让远程服务调用更加简单、透明,其负责屏蔽底层的传输方式(TCP/UDP)、序列化方式(XML/Json)和通信细节。服务调用者可以像调用本地接口一样调用远程的......
  • 本地事务失效问题描述及其解决方案
    什么情况下会出现本地事务失效的问题,为什么会出现本地事务失效问题? 在分布式架构中,本地事务失效的原因主要是在于分布式事务的实现难度和复杂度,需要在多个服务之间进行协调、通信和同步状态等,在特定的情况下,可能会出现延迟,中断或者失败的问题。 举一个简单的例子:如果在多个......
  • 深入理解JavaScript之作用域链与闭包
    作用域作用域是指程序源代码中定义变量的区域。实际上描述的就是查找变量的范围,作用域必须有的两个功能就是存储变量以及查找变量,作用域就是发挥这两个作用以及更多作用的规则。作用域规定了如何查找变量,也就是确定当前执行代码对变量的访问权限。词法作用域和动态作用域词法作用域......
  • 全面理解Java内存模型
    Java内存模型即JavaMemoryModel,简称JMM。JMM定义了Java虚拟机(JVM)在计算机内存(RAM)中的工作方式。JVM是整个计算机虚拟模型,所以JMM是隶属于JVM的。如果我们要想深入了解Java并发编程,就要先理解好Java内存模型。Java内存模型定义了多线程之间共享变量的可见性以及如何在需要的......
  • ThreadLocal 的原理讲述 + 基于ThreadLocal实现MVC中的M层的事务控制
    ThreadLocal的原理讲述+基于ThreadLocal实现MVC中的M层的事务控制目录ThreadLocal的原理讲述+基于ThreadLocal实现MVC中的M层的事务控制每博一文案1.ThreadLocal给概述2.抛砖引玉——>ThreadLocal3.ThreadLocal的模拟编写4.ThreadLocal源码原理分析5.ThreadLocal......