Research on Key Technologies in Web Service Runtime Environment

Abstract

Web服务(Web Service)是Web发展的自然产物,它能够支持应用系统以松散耦合的方式实现集成与协作,并通过降低应用连接的复杂性来减少应用维护和更新的代价,是目前Web应用环境中非常受欢迎的一种解决方案。Web服务自产生以来,得到了工业界和学术界的普遍关注,已有大量的研究围绕Web服务技术展开,本文主要关注Web服务运行支撑平台的研究。 面向服务的体系结构定义了构建面向服务的软件系统的整体思路,而软件系统的实施则需要落实到具体的运行支撑平台,Web服务运行支撑平台为Web服务的部署、运行、管理和维护提供各种基础设施支持,具有良好的应用前景。但Web服务运行支撑平台的研究起步较晚,在体系结构、服务组件模型、调度机制和事务处理方面研究尚不充分,本文针对这些问题展开研究,并将这些问题的解决方法和技术应用到我们研制的Web应用服务器中。 本文首先提出了一种基于Web应用服务器的Web服务运行支撑平台架构——OnceWSREA以及相应的Web服务组件模型OnceSCM。其中,Web服务以Web服务组件的形式纳入到Web应用服务器中,从而借助Web应用服务器提供的各种基础服务设施,满足构建企业级Web服务应用的需求。此外,OnceWSREA还具备运行期间动态可重配的能力,提高了Web服务运行管理的可扩展性和灵活性。 其次,本文对Web服务应用的性能问题进行了研究,提出了一种应用敏感的Web服务请求调度策略AWSRS。目前Web服务运行支撑平台对请求的调度仍然是传统的先来先服务策略,导致服务器重负载时,无法区分请求的重要性,降低了关键请求的性能。本文从应用的性能需求出发考虑服务器的请求调度机制,引入了应用获益的概念,并使用该概念来评估服务器为应用提供的性能保障效果。服务器将请求按照应用的需求进行分类,并按照应用获益最大化的目标为不同类型的请求分配资源。实验表明,AWSRS策略在服务器重负载时能够按照应用的意愿优先保障关键请求的处理,改善了服务器的整体性能表现。 再次,本文还研究了Web服务事务处理技术,提出了一种新型的Web服务事务处理模型OnceWSTM。该模型包括Web服务事务的静态结构和动态执行两方面的内容。在静态结构方面,构成Web服务事务的基本元素是原子事务,多个原子事务通过顺序、并行、优先等控制结构组合成一个复杂事务。OnceWSTM模型基于原子事务的事务属性,给出了Web服务事务的松弛原子性和良构性的严格定义,并给出了相应的良构性判定定理以及有效的良构性判定算法。另一方面,在Web服务事务的执行阶段,OnceWSTM提出了一种Web服务事务调度算法,它利用事务的语义知识和准入控制机制,有效地提高了Web服务事务的并发处理效率。 最后,本文实现了一个Web服务运行支撑平台的原型系统OnceASWS,它对上述研究成果进行了原型实现和验证。本文简要介绍了OnceASWS的体系结构、主要组件和功能实现。OnceASWS构建在Web应用服务器OnceAS之上,由Web服务容器、SOAP引擎和Web服务事务管理器三部分关键模块构成,为Web服务组件的创建、部署、运行和管理提供了基础设施支持。Web service is a natural consequence of the evolution of the Web. Web services can integrate and collaborate with various applications in a loosely coupled way to achieve business goals. It is one of the most promising solutions in the web application environment. Web services have drawn much attention from academia and industry. There are various research fields of Web services, and this thesis concentrates on the web service runtime environment. SOA has introduced the concept of how to build service oriented software applications, which is hard to implement without support from the underlying system. Web service runtime environment provides a series of runtime services, such as transaction and security services, to support the deployment, execution, management and maintenance of web services. It has a wide prospect in distributed applications. However, at this stage, the problems of building a web service runtime environment are not well addressed. In this thesis, we studied several key issues of web services runtime environment, and applied their solutions to design and implement the web service runtime environment in the web application server. Firstly, we proposed a web service runtime environment architecture based on application server with the name OnceWSREA. And a web service component model named OnceSCM was also presented. In the OnceWSREA, a web service was plugged into the application server as a web service component. Therefore, web services can satisfy the requirements of enterprise applications well by making use of various infrastructure services provided by the application server. Moreover, the OnceWSREA also provided mechanisms for dynamical reconfiguration which improved the extensibility and flexibility of web services runtime management. Secondly, we studied the issues of the performance of web service applications and proposed a novel application-aware web service requests scheduling strategy, named AWSRS. Currently, Web service runtime environment typically adopt the traditional FCFS scheduling strategy for handling application requests, which does not distinguish critical requests from non-critical ones, and therefore the performance of critical requests might be greatly reduced. We introduced the concept of "application benefit" to evaluate the effect of the server in improving the performance for applications. Based on this method, AWSRS was able to classify critical requests from applications and thus intelligently assigned corresponding resources for handling different classes of requests to maximize the total application benefits. In the scenarios where the server is in heavy load, our strategy can keep effective in maintaining the system performance. Later experimental results confirmed our efforts. Thirdly, we developed a web service transaction model, named OnceWSTM, which specified both structural and executive aspects of web service transaction. As to the static structure, we regarded atomic transactions as the building blocks of web service transactions. They construct complex transactions through a set of constructral rules. We formally defined the concept of relaxed atomicity and well-formedness of a web service transaction. And an effective method for well-formedness validation was also proposed. On the other hand, during the execution of web service transactions, OnceWSTM incorporated two enhancements, the semantic of transaction and admission control, to provide a higher degree of concurrency for web service transactions. Finally, we implemented a prototype of the web service runtime environment, named OnceASWS, and applied the approaches and solutions proposed in this thesis. The OnceASWS was implemented based on the web application server, named OnceAS, and it comprised three main components: the Web service container, the SOAP engine, and the Web service transaction manager. The implementation of OnceASWS was explained in details

    Similar works