130 likes | 230 Views
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.
E N D
Web ServicesAn 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. 2007. 10 Mar. 2008 < http://www.baselinemag.com/c/a/Projects-Enterprise-Planning/Will-Enterprise-Architects-Get-Any-REST-in-2008/>. • Erl, Thomas. "Exclusive SOA Web Services Journal Briefing – Thomas Erl on SOA." SOA World Magazine. 29 Oct. 2005. 01 Mar. 2008 <http://webservices.sys-con.com/read/136190.htm>. • Felding, Roy T. Architectural Styles and the Design of Network-Based Software Architectures. Diss. Univ. of California, Irvine, 2000. 2 Feb 2008 <http://www.ics.uci.edu/~fielding/pubs/dissertation/top.htm>. • Gisolfi, Dan. "Web Services Architect, Part 3: is Web Services the Reincarnation of CORBA?" IBM DeveloperWorks. 01 July 2001. IBM. 13 Mar. 2008 <http://www.ibm.com/developerworks/webservices/library/ws-arc3/>. • Mahmoud, Qusay H. "Service-Oriented Architecture (SOA) and Web Services: the Road to Enterprise Application Integration (EAI)." Sun Developer Network. Apr. 2005. 01 Mar. 2008 <http://java.sun.com/developer/technicalArticles/WebServices/soa/>. • Melgar, David. "Message-Centric Web Services Vs RPC-Style Invocations." SOA World Magazine. Mar. 2003. 08 Mar. 2008 <http://webservices.sys-con.com/read/39728.htm>. • Peltz, Chris. "Applying Design Issues and Patterns in Web Services." DevX. 7 Jan. 2003. 08 Mar. 2008 <http://www.devx.com/enterprise/Article/10397/1954>. • Richardson, Leonard, and Sam Ruby. RESTful Web Services. O'Reilly Media, Inc., 2007. • Vinoski, Steve. "Demystifying RESTful Data Coupling." Mar.-Apr. 2008. IEE. 01 Mar. 2008 <http://steve.vinoski.net/pdf/IEEE-Demystifying_RESTful_Data_Coupling.pdf>. • Vinoski, Steve. "REST Eye for the SOA Guy." IEEE Internet Computing 11 (2007): 82-84. 10 Mar. 2008 <http://dsonline.computer.org/portal/site/dsonline/menuitem.9ed3d9924aeb0dcd82ccc6716bbe36ec/index.jsp?&pName=dso_level1&path=dsonline/2007/01&file=w1tow.xml&xsl=article.xsl&>. • Leventhal, Michael, and Zhang Sen. "True XML Web Services." XML Europe 2003 (2003). 13 Mar. 2008 <http://www.textscience.com/papers/04-04-03.html>.