论文部分内容阅读
随着构件重用技术和分布式技术的发展,面向服务的体系结构(Service-Oriented Architecture, SOA)成为一种新的分布式应用程序体系结构,以Web服务及其组合为核心的服务计算模式成为新一代网络计算的主流。如何高效地组合分布于Internet中的各类Web服务,实现服务之间的无缝集成,成为分布式计算、流程管理以及软件工程等领域的研究热点。继而,业界纷纷研究Web服务组合模型、组合语言以及相应的支持系统,其中,对Web服务组合解释器的研究成为重点之一。本文在分析总结国内外主流Web服务组合方法和Web服务组合实现框架的基础上,设计并实现了CCML (Cooperative Composition Modeling Language)语言的Web服务组合解释器。首先,详细研究了本课题组提出的Web服务组合建模语言CCML,给出了其文本描述格式到XML描述格式的映射规则,并通过示例展示了二者的转换方法,旨在实现CCML语言与XML标准相接轨。然后,本文借鉴目前主流Web服务组合解释器的设计思想,设计了CCML语言的Web服务组合解释器的总体框架,并采用Java语言实现了其主要功能模块,包括文档解析器、流程管理器、交互事件调度器和服务交互APIs,采用Java输入/输出流技术实现了Web服务之间的先进先出通信通道,采用Java RMI (Remote Method Invocation)技术实现了Web服务调用。详细描述了解释器的工作流程,从服务状态转换的角度阐明了解释器的执行机制,并给出了相应的死锁调度算法。最后,以一个网上购物系统为例验证了本文研究的Web服务组合解释器的可行性和实用价值。本文研究对Web服务组合技术的发展具有一定的推动作用,对实现Web服务组合具有一定的理论和实际应用价值。