论文部分内容阅读
特征交互问题最早出现在电信领域,已成为电信领域开发新型业务的主要障碍之一。然而该问题并非局限于电信领域,在其他软件系统中同样出现了类似问题。近年来,随着Web服务的快速发展,越来越多的企业和个人将其应用以Web服务的形式发布到网上,而单个服务所能提供的功能是有限的,难以满足实际应用中多种多样的需求,因此需要将多个服务进行在线组合以满足用户复杂的功能需求。不同服务进行组合时需要考虑服务间的兼容性,即是否会产生类似于电信领域特征交互现象的冲突问题。由于Web服务开发的独立性、用户需求的多样性以及部署的分布性,使得Web服务具有多样性和个性化,由此产生的目标冲突、资源竞争等问题可能导致服务进行在线组合时产生冲突,从而使组合失败。因此,在进行服务的在线组合时对组合过程中的原子服务进行在线冲突检测是至关重要的。在发生冲突的情况下,通常需要对产生冲突的服务进行替换以解决冲突,而如何准确地选择替换服务并在并发情况下对多个替换请求进行在线调度是一个重要问题。本课题主要针对服务组合过程中的在线冲突检测问题及冲突解决过程中的在线服务选择与请求调度问题展开研究。针对冲突检测问题,本文提出一种基于过程挖掘的在线冲突检测框架,实现了针对循环状态与不确定性两种类型冲突的检测方法。当在线组合进行时调用本文框架进行服务间的冲突检测,该框架对待组合服务的日志信息进行挖掘,获得服务的Petri网模型,进而对Petri网进行分析获得服务的产生式规则,并利用产生式规则对不同服务进行推理分析从而进行在线冲突预测。实现了原型系统,通过一个应用实例进行实验并与现有方法进行对比分析。实验与对比结果表明,本文方法能够在不需要了解服务内部逻辑的前提下对服务组合过程中可能产生的循环状态与不确定性两类冲突进行在线预测,从而达到在服务组合过程中避免服务之间出现冲突的目的。冲突检测之后需要进行在线的服务回滚操作,从而对冲突予以解决,针对服务回滚过程中的服务选择与替换请求调度问题,利用加权轮询队列和回馈机制建立了服务替换请求调度模型,能够在冲突检测框架检测出冲突后为冲突服务进行在线最优替换服务选择,从而保证了冲突解决的执行,并对替换请求进行有效调度。提出了基于回馈机制的服务等待队列,并建立了服务QoS模型,从而提高服务选择准确率。运用排队论相关知识对本模型进行了时延特性分析。实验结果表明,本文方法能够在多个服务替换请求并发的情况下增加选择最优替换服务的概率,降低替换请求的等待时延,保证请求的相对公平。