● 摘要
从计算机科学发展的历史来看,针对可靠性的研究已近半个世纪,尽管各种新技术层出不穷,可靠性作为一种基础保障,始终是学术界关注的重点。可靠性是一个综合特性,其研究涵盖软硬件的诸多方面,在特定的问题域中,可靠性有其具体的含义。致力于解决应用层互操作性问题的Web服务技术近年来得到迅速发展,研究关注的重点也从功能特性逐渐转变为服务质量。如何确保作为Web服务QoS重要指标之一的Web服务可靠性,已成为一个亟待解决的关键研究问题。首先,Web服务技术作为当前一种重要的网络计算技术,其目标是支持Internet上的资源共享和协同工作,并提供各种异构应用系统之间的互连、互通和互操作;因而,研究提供应用系统之间的可靠消息传递方法,是实现该目标的重要基础和前提。其次,原子Web服务作为Web服务环境下的基本访问单元,如何确保对其调用的可靠性,是保证整个Web服务架构稳定运行的关键;因此,需要研究基于容错技术的Web服务调度算法,并且在提供冗余副本服务实例的同时,兼顾故障发生前后系统的负载均衡性。最后,由于原子Web服务提供的功能有限,这使得一些实际应用中所包含的业务流程,通常需要通过多个跨自治域的原子Web服务组合之后加以实现,但是这些服务提供者本身容易产生故障而导致失效,因此,需要研究组合Web服务的事务处理机制,以确保组合Web服务的可靠执行及参与各方状态的一致性。面对上述Web服务可靠性的基本科学技术问题,本文重点研究了“Web服务可靠消息传递模型”、“支持负载均衡的容错Web服务调度算法”和“组合Web服务事务处理机制”三个方面的形式化模型和关键技术,研究工作的主要内容和成果包括:(1)在研究Web服务可靠性应用需求和定义的基础上,结合Web服务协议栈,提出Web服务可靠性在协议栈的三个层次中所面临的“如何确保可靠消息传递,原子Web服务可靠调度和组合Web服务可靠执行”的基本科学技术问题。针对这些问题,系统分析和评述国内外现有的典型研究工作成果。(2)针对“如何确保Web服务环境中SOAP消息传递满足至多一次(At Most Once)、至少一次(At Least Once)、恰好一次(Exactly Once)、按次序(In Order)需求”的问题,基于扩展有限自动机(EFSM),提出一种对等双向Web服务可靠SOAP消息传递模型PEARLED,它以形式化的方式描述参与消息传递的可靠消息处理器的状态、操作和行为,定义消息传递过程中可能产生的故障类型及其处理方式。采用计算树逻辑(CTL)描述PEARLED模型的基本性质,并通过语义证明和SMV模型检验工具验证这两种方式,证明PEARLED模型具有“确保传递”、“重复删除”和“按序传递”的可靠消息传递性质。(3)针对“如何在原子Web服务调度发生故障时,提供功能可替代的等价副本服务实例,以保证调度过程的顺利完成,并确保系统的负载分布不会因为原子Web服务调度节点发生变化而仍保持均衡?”的问题,建立一种容错Web服务调度系统模型,借鉴启发式Greedy Method、经典的Two-Stage算法、及HDALF和HDLDF算法,分别提出优先考虑“Web服务实例实际负载”的AO-FILI和优先考虑“Web服务实例负载增值”的DO-FILI两种支持负载均衡的容错Web服务调度算法。仿真实验的结果表明,在异构Web服务环境中,AO-FILI和DO-FILI算法分别优于经典的Two-Stage、HDALF和HDLDF算法,能更好地保证故障发生前后系统的负载均衡性。(4)针对“如何确保由原子Web服务构成的组合Web服务的可靠执行,并满足组合Web服务事务放宽的原子性、隔离性和一致性要求?”的问题,基于抽象EFSM模型提出一种在客户端、协调器和参与者之间建立资源“预定—选择—确定”三阶段的组合Web服务事务处理机制RSA;它形式化地描述事务参与各方的状态、操作和行为,以及彼此之间交换消息的类型。采用CTL描述RSA的基本性质,并通过语义证明和SMV模型检验工具验证这两种方式,证明RSA具有“无死锁性”、“可重复性”和“一致性”的性质。RSA机制解决了“传统严格ACID事务属性的短事务处理机制无法满足长期运行的组合Web服务事务放宽的原子性、隔离性和一致性要求”的问题,克服了“补偿机制自身难于定义或判断、某些业务过程不可逆、取消已完成业务活动代价较高等因素造成难于实现”的问题,确保了组合Web服务可靠执行的要求。
相关内容
相关标签