Web服务事务处理模型研究与设计
详细信息    本馆镜像全文|  推荐本文 |  |   获取CNKI官网全文
摘要
Web服务是一种新型的分布式计算技术,具有可重用、自治、松耦合的特点。它屏蔽了应用程序的系统平台、编程语言等底层细节,通过良好定义的标准接口,使得分布式程序之间能够进行信息的交互。基于XML、SOAP、WSDL、UDDI等规范和协议,Web服务通过发布、发现和绑定的标准模式,使企业应用程序集成变得更加容易实现。
     事务是一系列应用操作组成的集合,它目的是确保系统容错和并发控制的正确顺利运行,从而更好地保证系统的可靠性。与传统的事务有所不同,由于涉及商务逻辑、网络状况和用户交互,Web服务事务处理过程通常会持续较长的时间,这使得严格遵从ACID特性的传统事务处理模型不再适用。
     本文首先对课题的背景和相关研究进行概述,接着介绍了Web服务、事务的概念以及事务处理模型,之后重点介绍了WS-C/T和BTP两个Web服务事务协议,并作简要比较。论文在WS-C/T协议的基础上,设计了一个Web服务事务处理模型,对处理过程中的服务协调、日志技术、故障恢复机制等进行了研究,之后详细描述了模型实现过程中用到的技术、原理、关键步骤,并以一个实例阐述模型分别对Web服务原子事务和业务事务进行处理的流程。最后通过测试,从而验证了Web服务事务处理模型具备处理原子事务和业务事务的能力。
Web services, a new distributed computing technology, have the characteristics of being reusable, autonomous, loosely coupled. It shields the application platform and details of the underlying programming language. With its well-defined standard interfaces or functions, distributed applications can interact information with each other. Web services are based on XML, SOAP, WSDL, UDDI and other standards and protocols, and by using standard model of publishing, discovering and binding, it facilitates the implementation of the integration of enterprises’applications.
     Transaction, a set of operations, aims to ensure the system fault tolerance and concurrency control, so that applications can run correctly and reliably. Web service transaction processing differs from traditional transaction in that it tends to last a longer time since it involves business logical process, network conditions and users’interaction, and therefore, traditional transaction processing model which is in strict compliance with ACID properties is no longer applicable.
     This thesis begins with a brief account of the background of the subject and an overview of relevant research, followed by the introduction of Web services, transactions and transaction processing model. Then, it focuses on WS-C/T and BTP, and makes a brief comparison between the two Web service transaction protocols. A Web service transaction processing model is designed based on the WS-C/T protocol, which contains service coordination, log technology and fault recovery mechanisms. Techniques, principles and key steps involved in the process of model implementation are described in detail. A specific example is given to demonstrate how the model processes Web service atomic transactions and business activity. Finally, it is tested to verify that the model can handle atomic transactions and business activity.
引文
[1] W3C. Web Services Description Language (WSDL)v1.1[EB/OL]. http://www.w3.org/TR /wsdl, 2001-03-15.
    [2] OASIS. Universal Description, Discovery, and Integration (UDDI)v3.0.2[EB/OL]. http://uddi.org/pubs/uddi-v3.0.2-20041019.htm, 2004-10-19.
    [3] W3C. Simple Object Access Protocol (SOAP)v1.2[EB/OL]. http://www.w3.org/TR /2007/ REC- soap12-part1-20070427/, 2007-04-27.
    [4] W3C. Extensible Markup Language (XML)v1.0[EB/OL]. http://www.w3.org/TR/2008/ PER-xml- 20080205/, 2008-02-05.
    [5] Gray J, Reuter A. Transaction Processing: Concepts and Techniques[M]. San Francisco: Morgan Kaufmann, 1993. 38-43.
    [6] IBM, BEA Systems, Microsoft, et al. Web Services Transaction(WS-Transaction)[EB/OL]. http://www.ibm.com/developerworks/library/ specification/ws-tx, 2005-08-16.
    [7] OASIS BTP Committee. Business Transaction Protocol Specification[EB/OL]. http://www.oasis-open.org/committees/download.php/1184/2002-06-03.BTP_cttee_spec_1.0.pdf, 2002-06-03.
    [8] Luis Felipe Cabrera, George Copeland, Max Feingold, et al. Web Services Coordination (WS-Coordination)[EB/OL].http://download.boulder.ibm.com/ibmdl/pub/software/dw/specs/ws-tx/WS-Coordination.pdf, 2005-08-16.
    [9] Luis Felipe Cabrera, George Copeland, Max Feingold, et al. Web Services Atomic Transactions(WS-AtomicTransaction)[EB/OL].http://download.boulder.ibm.com/ibmdl/pub/software/dw/specs/ws-tx/WS-AtomicTransaction.pdf, 2005-08-16.
    [10] Luis Felipe Cabrera, George Copeland, Max Feingold, et al. Web Services BusinessActivity Framework(WS-BusinessActivity)[EB/OL].http://download.boulder.ibm.com/ibmdl/pub/software/dw/specs/ws-tx/WS-BusinessActivity.pdf, 2005-08-16.
    [11] Doug Bunting, Martin Chapman, Oisin Hurley, et al. Web Services Composite Application Framework[EB/OL].http://www.oasis-open.org/committees/documents.php?wg_abbrev=ws-caf, 2005-10.
    [12] J.Roberts, K.Srinivasan, et al. Tentative Hold Protocol Part1:White Paper[EB/OL]. www.w3.org/TR/tenthold-1, 2001-11-28.
    [13] J.Roberts, K.Srinivasan, et al. Tentative Hold Protocol Part 2:Technical Specification[EB/OL]. www.w3.org/TR/tenthold-2, 2001-11-28.
    [14] Apache Software Foundation. Axis1.4[EB/OL]. http://www.apache.org/dyn/closer.cgi/ws/ axis/1_4, 2006-04-22.
    [15] Apache Software Foundation. Tomcat5.5.28[EB/OL]. http://archive.apache.org/dist/tomcat /tomcat-5 /v5.5.28/, 2010-04-20.
    [16] Mysql AB. Mysql5.0.67[EB/OL]. http://downloads.mysql.com/archives.php? p=mysql-5.0 &v=5.0.67, 2008-08-04.
    [17] Sleepycat Software. Berkeley DB Java Edition3.2.23[EB/OL]. http://www.oracle.com/ technetwork/database/berkeleydb/downloads/index-098622.html, 2007.
    [18] Eviware AB. SOAPUI3.5[EB/OL]. http://www.eviware.com, 2010-03-01.
    [19] Booth D, Haas H, Mccabe F. Web Services Artitechture[EB/OL]. http://www. w3.org/TR/ 2004/NOTE-ws-arch-20040211/wsa.pdf, 2004-02-11.
    [20] Armand Wilson, RIG Senior Consultant. Distributed Transactions and Two-Phase Commit[EB/OL].http://www.sdn.sap.com/irj/scn/go/portal/prtroot/docs/library/uuid/3732d690-0201-0010-a993 -b92aab79701f?QuickLink=index&overridelayout=true, 2004.
    [21] Ahmed K. Elmagarmid. Database Transaction Models for Advanced Applications[M]. Morgan Kaufmann Publisher Inc. 1992:35.
    [22] The Open Group. Distributed Transaction Processing: The XA Specification[EB/OL]. U.K: X/Open Company Ltd. http://www.opengroup.org/onlinepubs/009680699, 1996
    [23] Object Management Group. Transaction Service Specifieation [EB/OL]. http://www4. informatik.uni-erlangen.de/Lehre/WS02/V_OOVS/Uebung/ObjectTransactionService_02-08-07.pdf, 2002-08-07.
    [24] Jason Pritchard. COM and CORBA Side by Side Architectures, Strategies, and Implementations[M]. Addison Wesley Longman, Inc. 1999: 116.
    [25] Oracle Inc. Java Transaction API Specification 1.0.1[EB/OL]. http://www.oracle.com /technetwork/java/javaee/tech/jta-138684.html, 2009-10-11.
    [26] J.E.B. Moss. Nested Transactions: an Approach to Reliable Distributed Computing[M]. Massachusetts Institute of Technology Cambridge, MA, USA. 1985:160.
    [27] Calton Pu, Gail E.Kaiser, Norman Huthinson. Split-Transactions for Open-Ended Activities[A]. In:Proeeedings of the 14th Intenrational Conference VeryLarge DataBases(VLDB’88)[C]. Morgan Kaufmann Publisher Inc.1988:26-37.
    [28] H.Garcia-Molina, K.Salem. SAGAS[M]. ACM, New York, NY, USA. 1987: 249-259.
    [29] Benedikt Kratz. Protocols For Long Running Business Transactions[J]. Infolab Technical Report Series, 2004,(17):13.
    [30] Mark Little, Thomas Freund. A comparison of web services transaction protocols [EB/OL]. http://www.ibm.com/developerworks/library/ws-comproto/index.html?S_TACT=105AGX52&S_CMP=cn-a-ws, 2003-10-07.
    [31] Mark Little, Eric Newcomer, Greg Pavlik. Web Services Context Specification(WS-Context)[EB/OL]. http://xml.coverpages.org/WS-ContextCD-9904.pdf, 2004-11-3.
    [32] Mark Little, Eric Newcomer, Greg Pavlik. Web Services Coordination Specification (WS-CF) [EB/OL]. http://www.oasis-open.org/committees/download.php/15042, 2005-10-24.
    [33] Doug Bunting, Martin Chapman et al. Web services transaction management(WS-TXM) version 1.0[EB/OL]. http://xml.coverpages.org/WS-TXM-200310.pdf, 2003-07-28.
    [34] Thomas Stranden?s, Randi Karlsen. Transaction Compensation in Web Services [EB/OL]. http://heim.ifi.uio.no/~nik/2002/Strandenas.pdf, 2002.
    [35] B.Wirz, E.Nett. A Generic Log-Service Supporting Fast Recovery in Distributed Fault- Tolerant Systems[M]. IEEE Workshop on Advances in Parallel and Distributed Systems (APADS), Princeton, New Jersey, 1993:121-126.
    [36] Oracle Inc. Java EE 5 Technologies [EB/OL]. http://java.sun.com/javaee/technologies /javaee5.jsp, 2010-06.
    [37] Apache. Web Services Invocation Framework (WSIF)[EB/OL]. http://www.research.ibm. com/people/b/bth/OOWS2001/duftler.pdf, 2001-08-09.
    [38] Oracle Inc. JDK1.5[EB/OL]. http://www.oracle.com/technetwork/java/javase /downloads/ index-jdk5-jsp-142662.html, 2009-11-03.
    [39] Apache Software Foundation. log4j1.2.8[EB/OL]. http://logging.apache.org/log4j/1.2 /index.html, 2003-02-20.
    [40] Ron Patton. Software Testing(Second Edition)[M]. Pearson Education, Inc. 2006:36.
    [41] Alexandre Alves, Assaf Arkin et al. Web Services Business Process Execution Language Version 2.0[EB/OL]. http://docs.oasis-open.org/wsbpel/2.0/wsbpel-v2.0.pdf, 2007-04-11.

© 2004-2018 中国地质图书馆版权所有 京ICP备05064691号 京公网安备11010802017129号

地址:北京市海淀区学院路29号 邮编:100083

电话:办公室:(+86 10)66554848;文献借阅、咨询服务、科技查新:66554700