论文部分内容阅读
近年来,Web服务作为面向服务架构SOA的一种实现方法被广泛应用。越来越多的机构将软件和数据封装为Web服务发布到互联网上。在服务被使用的过程中,单个Web服务所提供的功能往往难以满足用户的需求,需要将多个Web服务进行组合,成为功能更为复杂的组合服务。Web服务组合大幅度提高了软件资源利用率和企业应用开发的效率,完成了单个Web服务无法完成的任务,并为企业和组织之间的协作提供了途径,成为企业级应用集成的关键技术。通过服务组合能够快速、有效地提供新的服务给用户,但随着互联网上Web服务数量的不断增加,功能属性相同但非功能属性(也就是QoS)不同的Web服务也越来越多。如何从海量的候选服务集中选出最符合用户QoS需求的Web服务已经成为一个研究热点。大部分现有的QoS模型使用确定的QoS参数进行服务选择,而在真实网络中存在大量的不确定因素,使得通过基于确定QoS模型得到的组合服务在运行时QoS性能指标变差,甚至是超出用户所能接受的范围。如何根据不确定QoS对服务进行选择,并且使得所选择的服务能够在大多数情况下都满足用户的需求就成为服务选择领域必须解决的问题。本文在基于QoS的Web服务选择研究的基础上,主要以工作流模型为组合基础,围绕基于不确定QoS的服务选择问题进行了如下研究:针对QoS驱动的Web服务选择研究,本文先研究了Web服务、Web服务组合、Web服务选择的支撑技术。通过对基于QoS的服务选择问题进行分析,建立了基于确定QoS的服务选择模型。然后针对QoS中的不确定性,建立了不确定QoS模型,并将不确定QoS引入到了服务选择模型当中,同时提出了该模型在求解时对QoS的预处理方法。考虑到鲁棒优化方法在解决不确定规划问题的鲁棒性和易处理性,本文将鲁棒优化方法引入Web服务选择问题模型的求解过程中,实现了基于鲁棒优化的不确定QoS服务选择;在此基础上,提出了针对工作流模型拆分的方法,并对服务选择模型进行简化,使得求解时间大大缩短。最后为了能够将本文所提出的方法付诸应用,设计并实现了一个基于JSP的鲁棒服务选择平台。在系统中,用户可以使用本文所提出的方法进行服务选择,并且嵌入了一个对服务进行自动化测试的模块,使得对服务QoS数据的收集更加方便。