2 u013179958 u013179958 于 2017.01.05 16:11 提问

分布式项目如何保证事务?

事务的特性(ACID特性)
A:原子性(Atomicity)
事务是数据库的逻辑工作单位,事务中包括的诸操作要么全做,要么全不做。
B:一致性(Consistency)
事务执行的结果必须是使数据库从一个一致性状态变到另一个一致性状态。一致性与原子性是密切相关的。
C:隔离性(Isolation)
一个事务的执行不能被其他事务干扰。
D:持续性/永久性(Durability)
一个事务一旦提交,它对数据库中数据的改变就应该是永久性的。

在分布式的项目结构中,如何保证事务?

1个回答

oyljerry
oyljerry   Ds   Rxr 2017.01.05 17:07
已采纳

主要是多阶段提交,选举,协商
http://www.cnblogs.com/dinglang/p/5679542.html

Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!
其他相关推荐
分布式事务之一:SOA需要怎样的事务控制方式
在一个基于SOA架构的分布式系统体系中,服务(Service)成为了基本的功能提供单元,无论与业务流程无关的基础功能,还是具体的业务逻辑,均实现在相应的服务之中。服务对外提供统一的接口,服务之间采用标准的通信方式进行交互,各个单一的服务精又有效的组合、编排成为一个有机的整体。在这样一个分布式系统中某个活动(Activity)的实现往往需要跨越单个服务的边界,如何协调多个服务之间的关系使之为活动功能
分布式系统事务一致性的几种解决方案简析
开篇 在OLTP系统领域,我们在很多业务场景下都会面临事务一致性方面的需求,例如最经典的Bob给Smith转账的案例。传统的企业开发,系统往往是以单体应用形式存在的,也没有横跨多个数据库。我们通常只需借助开发平台中特有数据访问技术和框架(例如Spring、JDBC、ADO.NET),结合关系型数据库自带的事务管理机制来实现事务性的需求。关系型数据库通常具有ACID特性:原子性(Atomicity
分布式应用保证事务原子性方案
一、案例缘起 我们经常使用事务来保证数据库层面数据的ACID特性。 举个栗子,用户下了一个订单,需要修改余额表,订单表,流水表,于是会有类似的伪代码: start transaction;          CURDtable t_account;  any Exception rollback;          CURDtable t_order;       a
分布式系统中数据库的事务如何处理?
1、数据库拆分有垂直和水平两种方式 数据库垂直拆分会带来的影响: a、单机的ACID保证被打破。数据到了多机后,原来单机中通过事务进行处理逻辑会有很大影响,要么放弃原来的单机事务,修改实现,要么引入分布式事务。 b、一些join操作会变得比较困难,因为数据可能已经在两个数据库中了。 c、靠外键去进行约束的场景会受到影响。 水平拆分会带来的影响: a、同样有可能ACID被打破。 b、同
分布式服务的事务如何处理?比如dubbo,服务与服务之间的事务怎么处理比较好,现在有没有开源的解决方案?
作者:何明璐 链接:http://www.zhihu.com/question/29483490/answer/98237582 来源:知乎 著作权归作者所有,转载请联系作者获得授权。 首先是不建议采用XA两阶段提交方式去处理分布式事务,要知道要能够支持XA分布式事务,必须是要实现XA规范才可以,而Service本身是无状态的,如果这样去做了等于是把Service内部的东西暴露了出去。
聊聊分布式事务&分布式系统事务一致性解决方案
事务就是一个会话过程中,对上下文的影响是一致的,要么所有的更改都做了,要么所有的更变都撤销掉。就要么生,要么死。没有半死不死的中间不可预期状态。 参考下薛定谔的猫。 事务是为了保障业务数据的完整性和准确性的。 分布式事务,常见的两个处理办法就是两段式提交和补偿。 两段式提交典型的就是XA,有个事务协调器,告诉大家,来都准备好提交,大家回复,都准备好了,然后协调器告诉大家,一起提
Spring Cloud分布式事务终极解决方案探讨
一 前言本话题已收入视频讲座《Spring Cloud分布式事务解决方案》大家不妨围观下阿里2017云栖大会《破解世界性技术难题!GTS让分布式事务简单高效》中,阿里声称提出了一种破解世界性难题之分布式事务的终极解决方案,无论是可靠性、还是处理速率都领先于市面上所有的技术。但令人遗憾的是一来项目未开源,二来还必须依赖阿里云的分布式数据库。毕竟,吃饭的家伙可不能轻易示人嘛。虽然如此,但《世界难题..
分布式缓存Redis之事务
写在前面  本学习教程所有示例代码见GitHub:https://github.com/selfconzrr/Redis_Learning   事务特性官方文档:https://redis.io/topics/transactions   事务特性中文文档:http://www.redis.cn/topics/transactions.html  从redis2.6开始引入Redis scrip
面试问题(如何保证分布式数据最终一致性)
保证分布式系统数据一致性的6种方案编者按:本文由「高可用架构后花园」群讨论整理而成。有人的地方,就有江湖有江湖的地方,就有纷争问题的起源在电商等业务中,系统一般由多个独立的服务组成,如何解决分布式调用时候数据的一致性? 具体业务场景如下,比如一个业务操作,如果同时调用服务 A、B、C,需要满足要么同时成功;要么同时失败。A、B、C 可能是多个不同部门开发、部署在不同服务器上的远程服务。在分布式系统...
RPC 分布式事务的疑问
RPC +Zookeeper 基本上可以提供分布式服务。 现在A系统 调用B系统,A系统需要更新本地状态,同时需要调用B系统减少库存。 我理解这是一个典型的分布式事务。  但分布式事务有自己的方案,比较典型的如:基于消息队列的二阶段提交。 我的疑问是:分布式CRUD,除了R之外,都需要事务。那么RPC框架那么火,存在的价值在哪里??????