论文摘要
随着网络技术和信息技术的发展,出现了越来越多的网络应用,并向着网络化、协同化、跨域化的趋势发展,网络协同应用的普及变得越来越广泛。但是开发、管理、支撑这样一个大型协同应用非常复杂,具备这种能力的软件生产企业并不多,目前普遍缺乏统一的公共信息技术和支撑平台来屏蔽这些复杂的协同应用实现技术,如分布式服务调用、应用跨域协同、协同应用适配等关键技术实现。云计算及PaaS服务模式的出现为如何实现网络应用的快速开发、交付、使用和部署带来了新的契机和技术手段。PaaS平台通过一系列基础接口实现网络应用的快速构建或交付,并能够根据用户需求的不同以SaaS模式提供个性化的应用服务。但是当前对于PaaS平台的研究大多集中在单一应用的定制、交付、使用和部署等方面,单一应用的支撑无法满足目前网络复杂协同应用系统构建、交付、部署和运行的需求。为此本文提出一个支持服务协同的PaaS平台,该平台提供一种新型面向云计算的协同应用开发、交付、部署、定制和使用模式。基于支持服务协同的PaaS平台,专业化应用提供商(ISV)可以将专业的应用、应用与其它类型的应用之间可能发生的协同关联和约束以及各种应用数据交付到该平台上,交付既可以是应用全部部署也可以仅仅以服务注册的方式实现;协同应用服务提供商可以利用该平台上已有的应用资源及其关联和约束构建出满足目标用户需求的协同服务,并提供给不同的行业用户按照各自的需求个性化使用;行业用户可以这个基础上定制出符合行业需求的大型的复杂的协同应用,实现协同应用的网络化提供和平台托管式运行。基于以上应用模式,支持服务协同的PaaS平台将汇聚众多专业化的软件服务资源,这些资源为大型复杂的协同应用提供了构建基础。但是由于资源的提供商不同,缺乏统一的行业标准,要想把这些资源动态装配成协同应用还需要面临诸多挑战,其中一个主要的挑战就是不同应用提供商提供的服务之间的诸多适配问题:1)服务应用之间的接口适配问题。服务由不同的开发商提供,其接口的定义没有统一的标准,造成消息交互出现异常,这时需要通过适配机制对接口进行匹配以完成服务协同过程;2)协同应用的协议适配问题。协同应用的协议是协同服务之间达成的消息交换顺序,即服务的编排(Choreography),服务编排的建立基于各个协同服务的编制(Orchestration),服务编制是服务内部行为,如果协同应用组成服务的内部编制与服务编排及协议不符,那么就需要进行服务的协议适配;3)服务协同适配器的动态构建问题。适配问题出现时即时、动态的构建出满足适配需求的适配器是实现服务协同的有效手段,可以提高服务的重用性和服务的协同效率。本文针对上述这些支持服务协同的PaaS平台中出现的适配问题开展了深入研究:1)在支持服务协同的PaaS平台上设计基于适配器的服务动态适配框架;2)针对协同应用构建过程中可能出现的接口不兼容情况基于前人的研究构建具体的行为模型,通过具体行为模型设计行为因素计算算法,计算出行为因素的影响度,从而提出一种综合的基于行为因素的的接口动态适配算法;3)针对协同应用服务协议匹配过程中出现的死锁问题设计死锁检测和可信死锁处理过程;4)针对PaaS平台上协同应用适配器的构建问题设计了基于适配器协议的适配器动态构建方法,相比于传统的适配器构建方法,该方法考虑了接口层和协议层的动态适配结果,同时采用更加灵活的动态方式而不是模板方式来构建适配器。本文研究的支持服务协同PaaS平台中的服务动态适配技术是构建大型复杂网络化协同应用,实现面向云计算的新型服务协同应用开发、交付的关键技术,对于提高不同机构或领域服务协同的协作效率,减少组织内部服务重构成本,提高服务的重用效用具有重要意义。同时论文成果也是云计算以服务及其流程为核心计算架构的关键技术之一,具有广阔的应用前景。