论文部分内容阅读
WS-BPEL作为WEB服务复合事实上的标准正引起越来越多的关注,它可以用来整合物理上分布的服务,构建复杂的业务流程。复合服务的执行依赖于分布的自治的第三方服务,其实际行为可能与预先指定的行为约束不一致;此外,由于复合服务的动态性和灵活性,其本身在运行期间可能发生动态调整,以适应不断变化的业务环境,因此需要对复合服务的行为在运行期进行连续的监控,保证复合服务的正确执行。同时,通过对复合服务的运行时监控,可以获取执行期间的各种性能信息,从而为流程的优化和动态的服务选择提供依据。
本文首先对业务流程运行时的监控需求进行了分析,然后针对这些监控需求,结合BPEL流程的特点,设计了一种新型的基于事件的监控需求描述语言Mon-BPEL,它可以精确的刻画功能性和非功能性的监控需求。相对于其他基于事件的监控需求描述语言(如Event Calculus,Past LTL等),Mon-BPEL可以方便的刻画流程执行事件序列之间的时序关系,同时,它具有简洁易懂,用户友好等特点。
此外,本文研究了基于AOP技术的业务流程监控机制。论文设计了一种针对BPEL语言的AOP扩展方案,以支持对业务流程运行期的动态监控。通过将监控需求映射为方面,从而分离子关注点,降低了业务流程开发的复杂度,提高了流程的可维护性。接着给出了Mon-BPEL监控需求表达式的的自动机语义,并基于自动机理论对监控需求表达式进行计算,检查指定的监控需求是否违背。最后,论文探讨了Aspect的动态编织机制,将监控功能引入BPEL引擎。
论文最后给出了监控平台在OnceBPEL引擎中的实现,并将前面提到的研究成果引入其中,通过实验对系统的功能及性能进行了测试与评估。