节点文献

Web服务故障的诊断方法研究

Research on Diagnostic Methods for Web Service Faults

【作者】 贾志淳

【导师】 陈荣;

【作者基本信息】 大连海事大学 , 计算机应用技术, 2013, 博士

【摘要】 随着Web服务技术的不断发展,大规模服务应用的成功部署,服务计算的动态性、开放性、自主性和社会性对如何保证服务应用软件的质量提出了诸多挑战。而对于开放环境下Web服务应用的最大挑战之一就是如何根据在服务运行期间观测到的症状或抛出的异常快速准确地找到问题服务,分析出故障发生的原因,进而帮助服务引擎快速排除故障恢复正常运行。在分析对比现有Web服务故障研究的基础上,本文围绕模型的不完备性、诊断的不确定性和复杂性等问题展开工作,具体包括:(1)提出一个开放环境下的Web服务诊断框架。该框架应用服务异常处理器去收集服务诊断信息,捕捉异常,选择恰当的诊断服务对故障服务进行诊断,并根据诊断结果从修复器中获得相应的修复策略保证服务的正常运行。(2)提出一种基于完备BPN模型的择优诊断方法。该方法通过Petri网形式化构建完备BPN模型,再使用历史数据计算行为故障概率优化诊断过程。实验对比分析表明该方法的诊断准确率和诊断效率均优于传统方法。(3)提出一种基于服务依赖图的统计诊断方法。通过构建描述行为依赖关系的轻量级服务依赖图模型,应用历史数据作为测试用例辅助诊断组合流程定义中的故障,根据故障类型确定故障原因。与传统的Web服务诊断方法相比,该方法的计算复杂度低,对各种规模和复杂度的Web服务都具有较高的诊断准确性。(4)提出一种基于服务执行矩阵的贝叶斯诊断方法。该方法使用历史数据构建服务执行矩阵,通过诊断推理方法获取诊断候选并利用贝叶斯公式计算候选故障概率确定系统故障。相比于传统基于模型的Web服务诊断方法,该方法不仅可以同时定位多个故障,而且能够随着历史数据的增加不断优化诊断结果。(5)提出一种基于隐马尔科夫模型的差异比较诊断方法。该方法通过加权方式结合多种诊断信息构建隐马尔科夫模型,应用其解码思想找出与异常执行序列最匹配的正常执行序列进而定位服务故障,可以解决系统模型不完备和历史数据中存在噪音数据这一实际问题。通过实验验证,该方法应用包含不同噪音比例的诊断信息进行诊断,其诊断准确性均高于传统的服务故障诊断方法。

【Abstract】 With the continuous development of web service technology, and the successful deployment of large-scale web service applications, many challenges have been posed to the quality of service software by service-oriented computing because of its dynamic, opennes, autonomy and sociality nature. In building high-reliable service applications under the open environment, one of the critical challenges is how to localize faulty service quickly and exactly through the observed symptoms or throwed exceptions, how to analyze the reasons of its misbehavior and help service engine restore the normal process as soon as possible.Based on comparative analysis of the state-of-the-art research, this thesis works on problems of incomplete model, diagnosis uncertainty and complexity, including the following:(1) To minimize failure impact on services and application execution, we present a diagnostic architecture of web service under the open environment. As an important bridge linking diagnosis service to web service in the architecture, the exception handler is responsible for catching the thrown exceptions, collecting the diagnostic information, selecting and invoking the appropriate diagnosis service. According to the diagnostic result of diagnosis service, the exception handler is able to get the corresponding recovery strategy from recovery selector and recover the service process from faulty effects.(2) To improve the diagnostic accuracy and efficiency, we propose a complete BPN model-based perfecting diagnosis method to diagnose faults in service process. The method defines the Petri nets-based process model for each activity in BPEL (complete BPN model). To raise diagnostic efficiency, the method optimizes the diagnostic order of service activities by computing the faulty probability of activities. The experimental results show that the method is more accuracy and costs less time than the existing MBD methods. (3) To eliminate the defects in the definition of composite service process, we propose a statistic diagnosis method based on service dependence graph. The service dependence graph-based diagnosis is an important feature of the method which extracts the dependence relations from the process specification to simplify the analysis of dependence relations between activities. The method is able to identify the incorrect activities and explain the root causes based on the differences between successful and failed executions of historical data. Experimental results show that our method is effective in diagnosing faults in web service composition of various scales.(4) To localize the faults of undefined service behaviors in service process, we propose a service execution matrix-based Bayes diagnosis method. On the basis of modeling the service execution matrix by historical data, the method combines multi-faults logic reasoning approach with the statistical techniques to obtain the diagnosis candidates. By applying Bayes’formula to compute the fault probability of each diagnosis candidate, the method is able to obtain an asymptotically optimal diagnosis with increasing historical data. Experiments are conducted to evaluate the effectiveness of the method in diagnosing the web services with multi-faults.(5) We present a hidden markov model-based (HMM) difference comparison diagnosis method for perfecting the service model and minimizing noise data impact. The method models hidden markov model by combining historical data into service process definition. On the basis of improving the decoding algorithms in HMM, the method is able to find a correct execution trace which has the maximum likelihood with the exception execution trace and localize the service faults by comparing the differences between them. The experimental results show that the method is effective and robust to various noises in diagnosing the faults of web services.

节点文献中: 

本文链接的文献网络图示:

本文的引文网络