Middleware Web Services Purpose of Layered Models jmask
Middleware & Web Services
Purpose of Layered Models jmask the heterogeneity of systems jprovide convenient programming abstraction
Layered Protocols: OSI Layers, interfaces, and protocols in the OSI model. Tv. S 2. 2
Middleware Protocols An adapted reference model for networked communication. Tv. S 2. 6
Purpose of Middleware ‘Middleware is primarily a set of programming abstractions developed to facilitate the development of complex distributed systems. ’ – Gustavo Alonso
Middleware provides… protocols to support general-purpose services to more specific applications, e. g. cauthentication protocols cauthorization protocols cdistributed commit protocols cdistributed locking protocols chigh-level communication protocols ^remote procedure calls (RPC) ^remote method invocation (RMI)
Middleware 1 -22 General structure of a distributed system as middleware. Tv. S 1. 24
Old-style Middleware programming models j Remote Calls c Remote Procedure Calls (RPC) c Distributed objects and Remote Method Invocation ^E. g. Java RMI j Common Object Request Broker Architecture (CORBA) c Cross-language RMI j Other Programming Models c Remote event notification c Remote SQL access c Distributed transaction processing
WS architecture: application integration o A popular interpretation of Web services is based on IBM’s Web service architecture which is based on three elements: Þ Service requester: The potential user of a service Þ Service provider: The entity that implements the service and offers to carry it out on behalf of the requester Þ Service registry: A place where available services are listed and which allows providers to advertise their services and requesters to query for services o The goal is just-in-time integration of applications by discovering and orchestrating network-available services Gustavo Alonso, ETH Zürich.
How is it ‘bottom up’? o The Web service architecture proposed by IBM is based on two key concepts: Þ architecture of existing synchronous middleware platforms Þ current specifications of SOAP, UDDI and WSDL o The architecture has a remarkable client/server flavor o It reflects only what can be done with Þ SOAP (Simple Object Access Protocol) Þ UDDI (Universal Description and Discovery Protocol) Þ WSDL (Web Services Description Language) UDDI SOAP WSDL Gustavo Alonso, ETH Zürich.
Message-based Middleware j. Asynchronous j. Sending and receiving documents c. No remote procedure calls or object invocation c. Less coordination required
The message world Gustavo Alonso, ETH Zürich.
Sources: Middleware j. Adapted from Introduction to Distributed Systems: Slides for CSCI 3171 Lectures by E. W. Grundke j. References: [Tv. S] A. Tanenbaum and M. van Steen Distributed Systems: Principles and Paradigms, Prentice-Hall (2002) <URL: http: //www. prenhall. com/divisions/esm/app/author_tanenbaum/custom/dist_sys_1 e/> [CDK] G. Coulouris, J. Dollimore and T. Kindberg Distributed System: Concepts and Design, Addison-Wesley (2001) <URL: http: //www. cdk 3. net/ig/beida/> [ISO] International Organization for Standardization/ International Electrotechnical Commission Standard ISO/IEC 7498 -1: Information Technology — Open Systems Interconnection — Basic Reference Model: The Basic Model (Second ed. , corrected and reprinted 1996 -06 -15) Reference number ISO/IEC 7498 -1: 1994(E) <URL: http: //standards. iso. org/ittf/Publicly. Available. Standards/s 020269_ISO_IEC_74981_1994(E). zip>
Sources: Web Services j Gustavo Alonso, Fabio Casati, and Harumi Kuno. Web Services: Concepts Architectures and Applications (Springer-Verlag, 2004) Slides from <URL: http: //www. inf. ethz. ch/~alonso/Web. Services. Book >. j Gustavo Alonso and Cesare Pautasso. Graduate course given at the University of Lappeenranta, Finland. August 9– 13, 2004. <URL: http: //www. inf. ethz. ch/personal/alonso/Web-book/Lappeenranta-graduate-course. zip>
- Slides: 14