好难的一个问题啊,之前浅浅玩过JTA(JOTM),现在发现远远没那么简单
对于分布式事务目前业界存在很大的纷争,有一种的要求强一致性的一方,有的说放弃强一致性,先不看场景,先瞧瞧1PC,2PC,3PC 但是由于事务之间的隔离性,强一致性只是一个美丽的梦,比如2PC,第一阶段就存在超时和异常,同样callback和commit也会有超时的,哪个阶段超时?如果再commit超时的话,甚至还有不完全提交的情况,即便是提交了,也不敢保证都完成commit是没有状态的,在不完全提交的时候也要做特殊处理,特别是最后一次做commit的时候根本不知道他的情况,redo log或许能解决二次提交的问题。无论如何2PC,3PC只是一种策略,锁会让等待时间延长,特别是数据库出现问题的时候,更加严重,一个大型网站不用说是要挂掉的。
2PC,3PC大型的企业没见过用,ebay,支付宝都没有用,原因就是其性能低下,JTA开发的程序必然是性能低下的,简单却是真的。
在eay有人提出用中间状态消息队列和消息应用状态表 详见: http://wangyuanzju.blog.163.com/blog/static/1302920086424341932/
相关推荐
分布式事务是为了解决分布式系统中跨越多个节点的操作,要求这些操作要么全部成功要么全部失败的一种事务机制。它是为了保证在不同节点上的数据一致性而产生的概念。分布式事务广泛应用于微服务架构、数据库分库分表...
分布式事务Seata介绍
面试中,分布式锁、分布式事务和分布式缓存等概念是考察开发者技术能力的重要方面。下面将对这些主题进行详细阐述。 分布式锁是解决分布式环境下的资源争抢问题的关键工具。在单机系统中,锁的实现相对简单,但在...
### 分布式事务基础知识 #### 一、ACID特性与CAP理论 在深入探讨不同分布式事务解决方案之前,我们首先需要理解分布式系统中的两个核心概念——ACID特性和CAP理论。 **ACID特性**: 1. **原子性(Atomicity)**...
内容概要:该文档详尽介绍了分布式事务的概念、背景、实现原理和具体方案,帮助开发者理解和实施有效的分布式事务处理方法。从易到难逐步介绍,确保新手也能跟上进度。文中不仅讲述了为什么需要分布式事务,还深入...
### 分布式事务的核心知识点解析 #### 一、分布式事务定义与重要性 **定义**: 分布式事务是指在分布式系统中执行的一系列操作,这些操作分布在不同的节点上,并且涉及多个资源管理器(如数据库)。分布式事务需要...
在Java开发领域,设计模式和分布式事务是面试中经常被提及的问题,是考察应聘者能力的重要方面。在面试中,面试官会问及应聘者对这些概念的理解、应用以及相关技术的掌握程度。 首先,设计模式是一套被广泛认识的、...
在Java分布式系统中,分布式事务是一项复杂的技术,需要深入了解事务的概念、特性和类型。下面我们将详细介绍分布式事务的概念、ACID特性、本地事务、全局事务、TX协议、XA协议、两阶段提交协议、BASE理论和CAP定理...
首先来解释分布式系统的CAP理论。...在面试中,面试官可能会要求应聘者详细解释CAP理论,讨论不同分布式事务解决方案的优缺点,以及根据场景选择合适的解决方案。因此,对于这些知识点的掌握程度直接影响到面试的结果。
Java分布式面试题涉及到的核心知识点广泛,包括分布式系统的基础概念、分布式事务处理以及相关的协议和理论。下面我们将逐一探讨这些主题。 1. **分布式系统**:分布式系统是由多台计算机通过网络互相连接,协同...
这份宝典深入探讨了Redis的各种使用场景、分布式事务处理、分布式锁的实现、数据库操作、异步并发编程、JVM(Java虚拟机)优化、微服务组件的使用以及经典的设计模式。以下是对这些主题的详细阐述: 1. **Redis使用...
常见的分布式事务解决方案有两阶段提交(2PC)、补偿事务(TCC)以及基于 Saga 模式的事务管理等。2PC虽然简单,但存在协调者单点故障和长时间阻塞问题。TCC和Saga模式则提供了一种更灵活的方式,但实现起来较为复杂...
分布式系统需要在数据完整、一致性和性能间做平衡。本文系统介绍了处理分布式数据一致性的技术模型,如:Master-Slave,Master-Master,2PC/3PC,经典的将军问题,Paxos,以及Dynamo的NRW和VectorClock的模型
在面试中,可能会涉及到CAP理论、BASE原则、分布式一致性算法(如Paxos、Raft)、分布式锁、分布式事务处理等。 **Dubbo** Dubbo是阿里巴巴开源的高性能Java RPC框架,它提供服务注册与发现、远程调用、负载均衡等...
以下是一些关于分布式系统面试中常见的知识点,基于提供的文件名,我们将逐一探讨。 1. Redis面试:Redis是一款高性能的键值存储数据库,常用于缓存和数据持久化。面试中可能会问到Redis的数据类型(如字符串、哈希...
根据给定文件的信息,我们可以提炼出与分布式系统相关的面试题知识点。这些知识点主要围绕着分布式系统的理论基础、架构设计、具体实现以及常见的问题解决方法展开。以下是对这些知识点的详细阐述: ### 一、分布式...
13. **分布式事务**:在分布式系统中保证事务的ACID特性(原子性、一致性、隔离性和持久性)是一项挑战,2PC、TCC等协议被用来处理这个问题。 14. **CAP的实践应用**:例如,Google的Bigtable采用AP策略,牺牲一致...
分布式事务是保证数据一致性的重要手段,2PC(两阶段提交)、TCC(尝试、确认、补偿)和Saga等事务模型各有优缺点,需根据实际需求选择。 云原生理念提倡利用云计算的优势,如容器化、服务网格Istio、Serverless等...
面试中会涉及CAP理论的应用、读写分离、分布式事务的处理等。 10. **消息队列** 消息队列(MQ)如RabbitMQ、Kafka等在分布式系统中用于解耦组件间的通信。面试中可能讨论消息的可靠性传输、顺序保证、消息持久化和...
分布式系统在现代软件架构中扮演着至关重要的...理解并熟练掌握这些技术是成为优秀Java分布式开发者的必备技能,也是面试中经常被问到的话题。通过合理选择和实现这些策略,可以构建高效、可扩展且稳定的分布式服务。