谈谈关于WCF事务属性

开发 后端
这里就什么是事务,WCF事务属性介绍,事务属性包括原子性、一致性、隔离性、持久性,文章有详细的介绍,希望大家看过之后深入的理解事务的概念。

大家都知道事物是一种不可在分的原子操作,这里就WCF事务和大家简单的分析一下。WCF提供的事务机制,其实除了利用已有的.NET 框架提供的事务机制外,还根据自身需求进行了扩展。这个问题不难理解。WCF编程模型告诉我们,WCF的应用通常包含客户系统、WCF服务系统。

事务概念 :什么是事务呢?其实这个事一个数据库系统中的一个概念。事务(Transaction)是并发控制的基本单位。所谓事务,它是一个操作序列,这些操作要么都执行,要么都不执行,它是一个不可分割的工作单位。

例如,银行转帐:通常包括两个操作:从一个帐号A扣款;使另一个帐号B增款。

这两个操作要么都执行,要么都不执行。在银行系统里,数据库系统执行相关的命令来完成两个操作。事务是数据库维护数据一致性的单位,在每个事务结束时,都能保证数据一致性。连个账号的金额不会出现错误。保证转账操作的正确完成。

#T#WCF事务属性:WCF事务也有自己的特性。这个大家都非常的熟悉。相信每个数据库相关的书籍都会介绍事务的特性ACID。 事务处理可以确保除非事务性单元内的所有操作都成功完成,否则不会永久更新面向数据的资源。通过将一组相关操作组合为一个要么全部成功要么全部失败的单元,可以简化错误恢复并使应用程序更加可靠。一个逻辑工作单元要成为事务,必须满足所谓的ACID(原子性、一致性、隔离性和持久性)

1.WCF事务属性原子性:
事务必须是原子工作单元;对于其数据修改,要么全都执行,要么全都不执行。通常,与某个事务关联的操作具有共同的目标,并且是相互依赖的。一个事务要被完全的无二义性的做完或撤消。在任何操作出现一个错误的情况下,构成事务的所有操作的效果必须被撤消,数据应被回滚到以前的状态。比如转账事务中的两个操作,要么全执行,要么全部执行。

2.WCF事务属性一致性:
事务在完成时,必须使所有的数据都保持一致状态。在相关数据库中,所有规则都必须应用于事务的修改,以保持所有数据的完整性。事务结束时,所有的内部数据结构(如 B 树索引或双向链表)都必须是正确的。某些维护一致性的责任由应用程序开发人员承担,他们必须确保应用程序已强制所有已知的完整性约束。例如,A账户里 10000元,B账户0元,转账成功以后。A和B账户的总额保持不变。还是10000元。不会因为转账成功就增加了总额。

3.WCF事务属性隔离性:
由并发事务所作的修改必须与任何其它并发事务所作的修改隔离。事务查看数据时数据所处的状态,要么是另一并发事务修改它之前的状态,要么是另一事务修改它之后的状态,事务不会查看中间状态的数据。这称为可串行性,因为它能够重新装载起始数据,并且重播一系列事务,以使数据结束时的状态与原始事务执行的状态相同。当事务可序列化时将获得最高的隔离级别。在此级别上,从一组可并行执行的事务获得的结果与通过连续运行每个事务所获得的结果相同。串行执行事务:在一个事务执行过程中,数据的中间的(可能不一致)状态不应该被暴露给所有的其他事务。
两个并发的事务应该不能操作同一项数据。数据库管理系统通常使用锁来实现隔离。

4.WCF事务属性持久性:
WCF 支持分布式事务,也就是说事务可以跨越服务边界、进程、机器、网络,在多个客户端和服务之间存在。而与此对应的事务数据信息传播和管理的协议不同。

责任编辑:田树 来源: 博客
相关推荐

2009-11-06 16:35:56

WCF Stream对

2010-03-02 13:43:01

WCF事务演示

2009-12-22 15:55:10

WCF事务

2009-11-09 13:04:53

WCF事物处理

2009-11-09 17:55:13

WCF缓存

2009-11-09 16:44:18

WCF Service

2009-12-07 18:33:31

WCF Service

2009-12-23 11:24:42

WCF附加属性

2009-12-07 18:47:16

WCF流

2020-07-30 07:30:17

存储技术数据

2010-02-22 17:34:39

WCF依赖属性

2010-03-02 13:36:23

WCF事务投票

2010-02-26 15:41:16

WCF分布事务

2009-11-09 13:47:22

WCF Stream操

2009-11-06 16:22:35

WCF协定

2009-11-06 13:23:27

WCF模式

2009-11-05 16:21:51

WCF服务

2009-11-10 15:36:24

VB.NET命名约定

2009-12-21 13:47:29

WCF分布式事务

2010-03-02 16:15:59

WCF控制事务
点赞
收藏

51CTO技术栈公众号