快速业务通道

分布式编程模式中的租约、事务和分布式事件机制 - 编程入门网

作者 佚名技术 来源 NET编程 浏览 发布时间 2012-06-22
每个参加者“表决”,表决可选择“就绪”(准备提交)、“未改变”(只读),或者“放弃”(事务应被放弃)。

两阶段提交协议的设计目标是使对象能够提供ACID属性。缺省的事务语义定义了保留这些属性的一个方法。ACID属性是:

·Atomicity(原子化):所有在一个事务下的操作全部发生或者一个也不发生。

·Consistency(一致性):事务的完成必须使系统保持在一致的状态。事务只是一个使保证一致性成为可能的工具,而它本身并不是一致性的保证者。

·Isolation(隔离性):正在执行的事务不应彼此影响。一个事务的参加者应该只能看到自己事务中操作的中间状态,而不是其它事务的中间状态。

·Durability(耐用性):事务提交的结果应像事务提交的对象实体一样持久,但这个保证只能由对象来完成。

依赖于参加者来实现ACID属性是两阶段提交协议与传统事务处理系统的最大不同之处。两阶段提交协议的定义使用了三个主要类型:

·Transactionmanager——事务管理者创建新的事务并协调参加者的动作。

·NestableTransactionManager——一些事务管理者能够支持嵌套的事务。

·TransactionParticipant——当操作是在一个事务之下进行的,参加者必须加入事务,给管理者提供一个对 TransactonParticipant对象的引用,以便用来表决。

分布式编程模式中的租约、事务和分布式事件机制(2)

时间:2010-12-21

分布式事件

1.分布式事件及通知

分布式事件系统有一些与单机系统不同的特点和需要。由于存在网络延迟和失败的可能性,远程对象事件的通知的顺序可能因客户的不同而异,或者根本没有到达。一个通知到达的时间可能会很长,也可能会有这种情况,接收通知的对象一方不总是希望立即得到通知,而是在接收一方决定的一个确定时间得到。甚至可能发生注册兴趣的对象并不是事件通知应发送的对象。

分布式通知的中心概念是在产生通知的对象和希望接收通知的其他对象之间加入第三方对象。它们可以从对象上卸下通知,实现多种传递保证,存储通知,并进行通知的过滤和重新路由。

2.基本接口和类

Jini 技术中分布式事件的接口定义了一个协议。通过使用该协议,一个Java 虚拟机的对象可以在其他Java 虚拟机对象上注册感兴趣的事件,并在事件发生时得到通知。接口中还规定了这类通知中必须包含的信息。协议中并未体现通知的可靠性与时限,这种保证并非协议的一部分,而是涉及到不同对象的一部分。

2.1涉及到的实体

事件和通知接口定义了实体的基本类型、对提交给实体的信息的需求,及一些支持性接口和类。

分布式系统中基本的对象有:对事件注册感兴趣的对象、发生事件的对象(事件产生者)和事件通知的接收者(远程事件监听者)。

事件产生者有某些其他对象可能会感兴趣的抽象状态,并允许其他对象对此事件注册兴趣。事件发生时,它将产生通知,发送通知到注册过此类事件的事件监听者。

基本类型由RemoteEventListener定义。远程事件监听者对其他对象发生的某类事件感兴趣。一个远程事件监听者的主要功能是接受其他对象中事件发生的通知。

支持性接口和类包括RemoteEvent对象、用作注册标识的EventRegistration对象,及一组可能产生的例外。远程事件是从事件产生者传递到远程事件监听者的对象,用来指示某类特殊事件的发生。EventRegistration类定义了返回注册者需要信息的对象,它是远程事件注册调用的返回值。EventRegistration类的实例包括一个事件类型的标识、当前事件类型的序列号,及一个注册的Lease对象。

保持与远程事件注册模型一致性的接口应反映:

·事件的注册是限定时间的,其方法是使那些注册在需要的

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号