论文部分内容阅读
近年来,互联网技术的高速发展,推动了基于互联网技术的服务计算理论与技术的迅猛发展。互联网上涌现了各式各样的Web服务,但互联网上的Web服务从功能角度看往往具有单一性,不能很好的满足用户日益复杂的业务需求。Web服务组合技术的诞生,为日益复杂的用户需求提供了一条新的解决途径。Web服务组合技术扩大了Web服务技术的应用范围,挖掘出Web服务组合技术的真正潜力。Petri网所拥有的异步性与并发等特征及其严格的数学理论和直观的图形化方式,非常适合建模、分析像Web服务这样的分布式系统。基于Petri网的Web服务组合执行引擎是Petri网理论用于Web服务组合的实现。但是,基于Petri网的Web服务组合执行引擎复杂性,决定了其应用系统状态的不确定性;其次,在应用系统发生故障后,系统就无法对外界给出的输入产生符合预期的输出,用户的需求无法得到满足。此时,用户虽然得知系统发生故障,但面对还是无法使用的系统。因此,针对基于Petri网的Web服务组合执行引擎故障问题,需要有效的基于Petri网的故障诊断与处理机制,通过监控引擎的运行状态,随时发现异常激发的变迁,并及时恢复基于Petri网的Web服务组合执行引擎的执行状态显得尤为重要。为了恢复基于Petri网的Web服务组合执行引擎的执行状态,传统的方法是重构执行引擎内Web服务组合所对应的Petri网。然而,用于服务组合的Web服务一般由服务提供商提供,分布在网络各处,执行服务需要付出代价(时间、金钱等),丢弃原有Petri网重构的代价往往是不可接受的。针对基于Petri网应用系统的故障问题,本文首先定义了原子服务执行故障的概念,以此给出了判别原子服务执行故障的方法,并作为基于Petri网的Web服务组合执行故障的诊断依据。随后,本文提出了基于Petri网的Web服务组合执行故障两级处理方法,用于解决基于Petri网的Web服务组合执行引擎故障。第一级,原子服务级故障处理方法。在传统Petri网基础上定义了原子服务,并以此为基础提出了Web服务组合执行故障处理策略,并将Petri网的变迁与Web服务中的原子服务一一对应,在此基础上定义了等价原子服务的概念,并结合本文在第四章提出的用于匹配故障Web服务的服务特征短编码算法,解决Petri网变迁替换问题。第二级,子网级别故障处理方法。提出在无法找到原子服务时,结合本文第三章提出的用于候选可替换Web服务排序的服务QoS动态计算方法,通过Petri网子网替换的方法恢复Petri网的可达性。最后,本文通过实例验证了故障诊断与两级服务故障处理算法。