• 2阶段提交协议.

    • 事务先提交给协调者,由协调者分发给各个RM,在一段规定的时间后。由RM询问各个RM是否提交还是终止操作。RM根据自己的状态来决定提交/终止。协调者根据RM的结果,决定操作的提交/终止。如果提交。由协调者通知各个RM来执行真正的提交。如果有一个要求终止,由协调者通知各个RM来回滚。(一票否决权).
  • 持久与可变RM: 大量长时间的数据处理,使用持久性的RM.对于对效率要求高的处理,使用可变的RM.
  • CLR’s TransctionScope:当事务操作涉及多个Object时使用.
    • 一个应用程序域中可以有多个LTM.一个LTM可以有一个持久,或者多个可变的RM. 当操作同时对注册表和文件进行处理时使用KTM(Vista才有).
    • 相互之间交互的是DTC,每个主机外派的谈判代表。由根DTC来决定提交/终止。每个DTC都与Root DTC关联.
  • 事务标准有:ws-coordination,ws-atomicTransction,ws-Businessactivity.
  • 事务流:缺省是关闭的. 客户端的事务可以流动到服务器端(当服务器端支持事务流时),可以让两者使用同一事务。当一个事务需要C/S共同完成时很有用.以方便两端同时回滚.保持一致.
  • 事务超时:缺省60秒.
  • 隔离级别越高,力度越细.降低事务的并发性.太低,并发行好.但是会出现脏读,幻读.所以要综合考虑.当C/S的隔离级别不同时.会出现异常.
  • 常见的事务问题: 1) 胀读: 读了别的事物修改的数据,但是别的事务在之后又发生回滚;2)非可重复性读:更改了别人正在读的数据;3)幻读: 读取了别人还未来得急要变更的数据.
    • 隔离级别

      ReadUncommitted

      ReadCommitted

      RepeatableRead

      Serializable

      脏读

      Yes

      No

      No

      No

      非可重复性读取

      Yes

      Yes

      No

      No

      幻读

      Yes

      Yes

      Yes

      No

    • 可以把事务安排到不同的层面上去.最后一个的事务,由客户端与服务器端同时完成一个事务.通过事务流来传递.

WCF之事务的更多相关文章

  1. WCF分布式事务

    原文地址:http://developer.51cto.com/art/201002/185426.htm 我们作为一个开发人员,应该能够顺应技术的不断发展,不断的去掌握新技术.那么,对于WCF的掌握 ...

  2. WCF分布式事务(EF)

    才说分布式事务,首先,了解一下什么是交易. 事务有四个特性:ACID A是Atomicity,原子性.一个事务往往涉及到很多的子操作,原子性则保证这些子操作要么都做,要么都不做,而不至于出现事务的部分 ...

  3. wcf中事务的操作

    using System; using System.ServiceModel; namespace Larryle.Wcf.ServiceContract.Transaction { [Servic ...

  4. [WCF编程]12.事务:服务事务编程(下)

    一.投票与提交 虽然WCF负责事务传播及两阶段提交协议的管理工作,但是 她不知道事务是否应该提交或终止.这需要根服务告诉WCF应该何时启动两阶段提交协议.是提交还是终止.WCF提供了两种编程模式来对事 ...

  5. [WCF编程]12.事务:服务事务编程(上)

    一.设置环境事务 默认情况下,服务类和操作没有环境事务,即使客户端事务传播到服务端也是如此. 尽管强制事务流从客户端传播过来,但服务端的环境事务依旧为null.为了启用环境事务,每个操作必须告诉WCF ...

  6. [WCF编程]12.事务:事务传播

    一.事务传播概述 WCF可以跨越服务边界传递事务.这可以让服务参与到客户端事务里,客户端还可以在同一个事务里调用多个服务.客户端本身不一定是WCF服务.客户端事务是否传播到服务端可以通过绑定和操作契约 ...

  7. [转载]WCF系列_分布式事务(下)

    浏览到chnking的WCF的分布式事务处理不错,转载过来分享一下. 1. WCF分布式事务例子这里也用转账的例子说事.用户在系统A和系统B都有账户,账户间的资金可以互转,系统A的资金减少多少,系统B ...

  8. WCF分布式开发步步为赢(12):WCF事务机制(Transaction)和分布式事务编程

    今天我们继续学习WCF分布式开发步步为赢系列的12节:WCF事务机制(Transaction)和分布式事务编程.众所周知,应用系统开发过程中,事务是一个重要的概念.它是保证数据与服务可靠性的重要机制. ...

  9. 跟我一起学WCF(13)——WCF系列总结

    引言 WCF是微软为了实现SOA的框架,它是对微乳之前多种分布式技术的继承和扩展,这些技术包括Enterprise Service..NET Remoting.XML Web Service.MSMQ ...

随机推荐

  1. Android Compatibility package 兼容性开发套件

    我们认为Android 3.0平板电脑操作系统在美国时间2011年2月22日的正式推出,对于Android手机应用程序开发者所象征的意涵是: 之前大家所开发过的Android手机应用,除了可以在And ...

  2. ztree使用系列四(ztree实现同级拖拽排序并将排序结果保存数据库)

    ztree这个系列的最后一篇,也是ztree功能强大的体现之中的一个--排序功能. ztree能够实现全部节点之间任意的拖拽排序功能.我这里依据须要实现了仅仅同意同级之间任意拖拽排序,事实上原理都一样 ...

  3. 548 - Tree (UVa OJ)

    Tree You are to determine the value of the leaf node in a given binary tree that is the terminal nod ...

  4. git无法连接bitbucket/github时,出现"Permission deied(publickey)"

    Permission denied (publickey). fatal: Could not read from remote repository. Please make sure you ha ...

  5. V8::Arguments中This和Holder的区别

    ## v8::Arguments namespace v8 { class Arguments { public:  inline int Length() const;  inline Local& ...

  6. Deepin Linux 安装JDK

    最近在自己的笔记本上安装了Deepin Linux,虽然使用过程中发现一些bugs,但是总体感觉还不错,准备把她作为开发系统使用.系统自带的JDK是Open JDK,但是在做JAVA开发的时候通常需要 ...

  7. LeetCode25 Reverse Nodes in k-Group

    题意: Given a linked list, reverse the nodes of a linked list k at a time and return its modified list ...

  8. 【Mood-8】IT男!五更天!

    男人从毕业到30岁之间所承受的叠加的压力,赡养父母.结婚生子.升职加薪.工作压力.生活质量,这些东西可以压得我们喘不过起来,也成为我们成长的动力, 我们累,但不说累,我们闷着头做事儿,不张扬,但每个都 ...

  9. IOS 中frame与bounds的区别

    文章摘要:http://www.sendong.com/news1733.html bounds是指这个view在它自己坐标系的坐标和大小 而frame指的是这个view在它superview的坐标系 ...

  10. 05. 取SQL分组中的某几行数据

    对表中数据分组,有时只需要某列的聚合值:有时却需要返回整行数据,常用的方法有:子查询.ROW_NUMBER.APPLY,总体感觉还是ROW_NUMBER比较直观.测试数据: if OBJECT_ID( ...