论文部分内容阅读
Web服务的出现是internet技术发展的一次革命,使得Web上的交互方式从以信息为中心转化为以服务为中心,从而使internet上的各种应用集成成为可能。企业应用集成和电子商务等系统利用Web服务,在工作流技术的保障下,实现了企业间以及企业内的业务流程管理(BPM),从而将业务流程扩展到整个internet上,有效的利用了internet上现有的服务,增强了互联网上的交互能力,最终使得整个互联网成为一个整合了各种服务的业务流程的有机整体。目前,各个标准化组织制定了许多Web服务的流程协作规范,在业务流程管理(BPM)上得到了广泛的应用。 事务处理技术是保证信息可靠性和一致性的关键技术。目前广泛使用的平面事务是具有ACID(atomicity,consistency,isolation and durability)特性的原子操作序列。平面事务模型在支持长时间运行事务方面存在缺陷,也不能适用于Web服务流程协作。 在业务流程管理中,事务为流程协作提供了可靠性保障。由于Web服务所处的松耦合环境,对于长运行的流程事务,我们很难保证其严格的ACID事务属性,而需要保证其放松的原子性和一致性。当前的流程协作事务规范对于长运行的流程事务的支持主要基于Saga模型和开放嵌套事务模型,利用补偿的概念,当一个具有已提交数据的事务发生故障时,能及时的扩展控制区域。然而通过补偿回滚已完成的事务代价较大,能否尽量减少补偿回滚的发生,现有的规范并没有很好的解决这个问题。另外,internet/intranet上具有大量功能语义相同的Web服务,Web服务事务框架如何利用该特点提高事务框架所提供的事务保障性,现有的研究和规范也很少涉及。本文针对这些不足展开研究。 本文首先讨论了Web服务业务流程事务框架,给出了框架的组成结构。对Web服务业务流程下的事务模型、事务协同协议和事务描述语言做了介绍和归类整理。本文提出了一个Web服务业务流程事务模型BPTM,定义了基于预申请和功能替代的Web服务流程长事务。并给出了该模型的事务阶段和协同协议。 基于BPTM的特点,我们给出了BPTM的实现设计,在BPTM的实现设计中,我们描述了BPTM的实现架构、各组成部分之间的关系,并给出了其中关键性组件的设计及它们之间的协同。 基于BPTM模型,本文设计了Web服务业务流程事务描述语言PTDL4WS。PTDL4WS语言可以用来声明组成业务流程事务的Web服务的事务类型,事务流程的协同。通过PTDL4WS,可以描述流程事务的预申请阶段,还能够描述internet上功能语义相同的Web服务,组成功能事务服务。另外,PTDL4WS能够描述补偿事务,从而保证长运行流程事务的放松原子性和一致性。 最后,我们介绍了中国人民保险公司总公司(PICC)委托我们开发的基于Web服务业务流程的保险电子商务系统,并阐述了BPTM在其中的应用。