WEB SERVICES AN EVALUATION OF MODERN WEB SERVICE ARCHITECTURES Gordon Hew COMS E6125 Web Information Management Systems
Agenda Introduction Architectural Styles Remote Procedure Call (RPC) Serviced Oriented Architecture (SOA) Representational State Transfer (REST) Conclusion
Web Services & Architectural Styles What are Web Services? Why are they important? What are some examples? Why are Architectural Styles important? What criteria will be using to evaluate these styles?
Remote Procedure Call (RPC) RPC Client invocation of a local representation of a remote method
Remote Procedure Call (RPC) Example Technologies XML-RPC RPC Style SOAP Advantages Simple Disadvantages Tightly Coupled Not Easily Scalable
Service Oriented Architecture (SOA) SOA Principles Separation of concerns Service Orientation Loosely Coupled Formal Contracts Abstract Logic Composable Reusable Autonomous Stateless Discoverable
Service Oriented Architecture (SOA) SOA Workflow
Service Oriented Architecture (SOA) Primary Technologies Document-centric SOAP WSDL UDDI Advantages Extensible Scalable Disadvantages Excessive Configuration Reliance on Tools
Representational State Transfer (REST) REST Principles Resource Oriented Uniquely Addressable Client-Server Stateless Cache Uniform Interface Layered System
Representational State Transfer (REST) REST Workflow
Representational State Transfer (REST) Example Framework Restlet Advantages Extensible Scalable Content Types Disadvantages Data Size
Conclusion REST is the best overall architecture style Not too complex Extensible Interoperable Scalable Challenges to Adoption Benefits are not immediately recognizable Maturity Investment in SOA
References Carr, David F. "Will Enterprise Architects Get Any REST in 2008?" Baseline. 20 Dec Mar Erl, Thomas. "Exclusive SOA Web Services Journal Briefing – Thomas Erl on SOA." SOA World Magazine. 29 Oct Mar Felding, Roy T. Architectural Styles and the Design of Network-Based Software Architectures. Diss. Univ. of California, Irvine, Feb Gisolfi, Dan. "Web Services Architect, Part 3: is Web Services the Reincarnation of CORBA?" IBM DeveloperWorks. 01 July IBM. 13 Mar Mahmoud, Qusay H. "Service-Oriented Architecture (SOA) and Web Services: the Road to Enterprise Application Integration (EAI)." Sun Developer Network. Apr Mar Melgar, David. "Message-Centric Web Services Vs RPC-Style Invocations." SOA World Magazine. Mar Mar Peltz, Chris. "Applying Design Issues and Patterns in Web Services." DevX. 7 Jan Mar Richardson, Leonard, and Sam Ruby. RESTful Web Services. O'Reilly Media, Inc., Vinoski, Steve. "Demystifying RESTful Data Coupling." Mar.-Apr IEE. 01 Mar Vinoski, Steve. "REST Eye for the SOA Guy." IEEE Internet Computing 11 (2007): Mar Leventhal, Michael, and Zhang Sen. "True XML Web Services." XML Europe 2003 (2003). 13 Mar