论文部分内容阅读
目前,(?)Veb Services技术正受到产业界和学术界越来越多的关注,其应用也越来越广泛,出现了不少功能相同或相似的Web服务。在功能驱动的Web服务组合中,代表非功能属性的QoS与功能属性同样重要,因为不满足QoS需求的服务与不能满足功能需求的服务一样无法提供用户期望的服务。判断基于功能需求选取的Web服务是否满足QoS需求,以及从功能相似的Web服务中选择QoS属性较优的提供给用户十分必要。而这些都需要在Web服务执行前对该服务的QoS属性进行准确的获取,获取结果作为判断和择优的标准。当前的Web服务QoS获取方法都是直接通过UDDI获取或者通过中心监控的方法获取,在度量的准确性,效率等方面都有所欠缺。本文提出一种基于执行日志的Web服务QoS的获取方法。该方法首先根据要获取的Web服务QoS属性集,建立可扩展的QoS模型。因为QoS属性集的选择和属性度量方法直接决定了Web服务执行日志需要记载的内容;接下来对要获取Web服务QoS数据的目标,应分析出执行日志中需要记载的内容,给出一个合理的日志记载框架,使之能够通用、灵活方便、高效地记载日志;然后基于执行日志库的执行信息提取发生在服务调用时刻上的各QoS属性值,生成QoS时间点数据库。最后基于上一步生成的QoS时间点数据库,用户可以查询给定时间段上的Web服务历史QoS数据,也可以基于历史QoS数据预测下一时间段的实时QoS数据。本文的获取方法关键在于提取QoS时间点数据,主要由算法QoSEA、TSIA和LIA完成,通过分析这三个算法的时间复杂度证明算法是高效的。最后本文通过比较由日志提取出的QoS数据与真实QoS数据,以及比较QoS原序列与预测值,说明了本文提出的获取方法的准确性与预测模型的适用性。