文档介绍:第 25卷第 3期四川理工学院学报(自然科学版) Vol25 No3
2012年 6月 JournalofSichuanUniversityofScience&Engineering(NaturalScienceEdition) Jun2012
文章编号:16731549(2012)03003706 DOI:.1673
基于 B+树的 BPEL流程异常处理机制研究
吴吉红,高辉
(辽宁大学信息学院,沈阳 110036)
摘要:Web服务组合具有松耦合、自治性的特点,BPEL规范中的异常处理机制也不完善,于是
BPEL流程中的异常处理方法是研究的一个主要问题。针对该问题,在流程运行阶段处理异常的一些通
用的策略的基础上,提出了基于 B+树的等价服务替换算法,分别阐述了 BPEL中同步和异步调用 Web
服务产生异常的情况,最后构架了一个异常处理的系统框架原型。
关键词:B+树;BPEL;异常处理;QoS;等价服务替换
中图分类号:TP311 文献标识码:A
其异常处理逻辑的含义,对用户的理解能力和专业功底
引言
提出了要求,如果考虑不周,很容易产生异常和错误,导
在不断开发软件的过程中,开发人员越来越清楚地致流程无法继续运行。
认识到合理的业务逻辑以及完整的处理手段对整个软文献[34]考虑到在流程运行过程中可能出现的一
件系统起着至关重要的作用。BPEL(BusinessProcess 系列问题,提出了一种基于补偿业务生成图的组合服务
ExecutionLanguage),即业务流程执行语言,是一种使用异常处理方法。基于流程中任务之间补偿依赖关系,讨
XML编写的编程语言,用于自动化业务流程,广泛使用论了补偿业务生成图的自动生成问题,当流程出现异常
于 Web服务相关的项目开发中。BPEL实现的 Web服的时候,采取向前处理或者向后恢复的策略。在向后恢
务组合具有松耦合,服务可重用性,递归组合方式等特复时,保证补偿的实现;在向前处理中对补偿服务不存
性,异常和错误发生的概率将大大提高。然而传统业务在的情况采用的等价服务替换,对补偿代价过高的服务
流程执行语言,例如 ,提高了灵活性。但是并没有涉及对于那些暂时转
和补偿机制,异常的处理措施由业务开发者自己定义, 让不出去的服务要怎样处理,在寻找等价服务的时候,
从而也将异常处理的复杂性推给了业务开发者[1]。只是按照类型寻找,没有考虑其它的要求。
面对 ,为了增强由于存在上述不足,学者们开始从多种角度对异常
系统的鲁棒性,提升用户的信心,学者们采用了多种方进行分类处理,提出了忽略、重试、等价替换、补偿恢复
法来对服务组合中的异常进行处理。由于 Web服务组等主流的异常解决方法。文献[5]提出了一个 MPEHS
合本身自治性、