论文部分内容阅读
随着网络和软件技术的成熟,尤其是云计算技术的兴起,软件的开发、交付、部署、使用模式发生了巨大变化。软件开发商不再使用传统的设计开发模式,基于服务组合技术的软件开发模式成为新的趋势;开发商在软件交付时,无需关心网络应用的诸多底层技术实现,只需要专注于业务逻辑的实现,以平台即服务(PaaS)的思想将应用的业务逻辑交付给一个面向云计算的网络支撑平台,即可使之成为供不断扩展的规模化用户使用的网络应用,我们称这个平台为PaaS支撑平台;云计算的可伸缩性和租赁成本的廉价性为软件提供商便捷部署应用提供了可能,极大减少了运行和维护的工作量;用户不再需要购买或开发应用,而是以软件即服务(SaaS)的模式来定制和使用交付到平台中的软件满足个性化需求。目前的PaaS平台专注对单个应用的支撑——支持用户以SaaS的模式定制个性化应用,支持软件应用以服务的形式在平台中运行和维护等;但是当前的PaaS平台普遍缺乏对协同应用的支持。如今行业用户的业务需求日益复杂,促使大型复杂的信息系统具有了网络化、协同化以及跨域化的发展趋势,网络协同应用的普及也变得越来越广泛;而开发、交付、部署和使用这样的协同应用需要解决诸多底层的技术实现,迫切需要云计算模式中的应用开发、交付、运行、维护等关键技术的支撑。尤其是如何基于网络、基于PaaS的思想、基于PaaS平台汇聚的海量软件服务,动态构建、快速按需定制出满足用户需求的协同应用将面临诸多挑战。为此,本文针对云计算环境中的协同应用进行了深入的研究,重点开展了以下工作:1)本文提出了一个支持协同应用动态构建的PaaS平台。平台支持软件提供商(ISV)将应用、数据以及应用可能发生的协同关联和约束关系交付给平台,交付的方式可以是以服务注册的形式或者是完全部署的方式;支持协同应用集成商基于协同关系和约束构建满足业务需求的协同应用;支持行业用户定制个性化的大型网络协同应用和应用的托管运行。2)为了将平台中汇集的来自不同ISV交付的软件应用,自动、快速构建大型协同网络应用以满足复杂业务目标;本文提出了PaaS平台中的基于自动规划理论的协同应用动态构建方法。方法依据交付的支持应用协同的语义模型和以及模型间的关联和约束关系,使用任务层次网络规划理论(HTN Planning)按需动态构建支持协同工作的软件服务编排逻辑。3)由于软件服务编排逻辑使用不同软件提供商的服务资源,能否顺利的协同执行需要进行应用协同关联的正确性验证;包括以下两个方面的验证处理,软件服务编排逻辑的协同匹配验证,使用图理论中执行路径的匹配处理以满足路径匹配原则即应用匹配原则,应用执行过程中数据有效性的匹配验证,使用图规划理论(Graph Planning)实现应用中的数据匹配满足应用的数据匹配原则。PaaS平台中的协同应用动态构建方法研究为大型的复杂网络协同应用的快捷实现提供了可能,在例如需要多个应用协同工作的电子商务业务处理有较高的实用价值。本文基于电子商务的网上购物实例进行了简单的原型系统设计和实现;对提出的协同应用动态构建以及匹配验证方法进行了实现,并通过实例说明和实验数据比较说明我们的方法不但可以保证应用功能实现和应用请求的语义一致性,同时还能保证应用执行过程中的数据一致性。