我正在尝试了解 Java EE
中的分布式事务
。在阅读了一些网上资料和书籍后,我了解到在Java EE中,有一个特定的API,称为JTA
,它是Java EE的技术堆栈之一,用于处理分布式事务。除了 JTA 之外,还有其他概念,例如:2PC(两阶段提交)策略
、XA、扩展架构
。
仅考虑数据库,我对分布式事务有以下问题:
Q1) 对分布式事务的真正支持是否来自数据库驱动程序本身?
Q2)数据库(真正的数据库)是否意识到分布式事务或由其他组件负责?
有人可以帮我解决这些疑问吗?
最佳答案
简而言之,真正具有事务功能的是数据库。数据库必须关心提交后的数据是否一致并正确存储到磁盘。
同时,司机可以帮助您管理交易。例如,在第一次请求时为您打开它或自动提交它。
编辑: 抱歉,主要问题是关于分布式事务的。 分布式事务由驱动程序和事务管理器处理。从数据库的角度来看,这笔交易没有什么特别之处。
关于java - 数据库驱动程序需要支持分布式事务还是数据库本身需要支持?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38455321/