1 / 14

Principled Design of the Modern Web Architecture

Principled Design of the Modern Web Architecture. Roy T. Fielding and Richard N Taylor. References:

clancy
Télécharger la présentation

Principled Design of the Modern Web Architecture

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Principled Design of the Modern Web Architecture Roy T. Fielding and Richard N Taylor • References: • Roy T. Fielding and Richard N. Taylor. ”Principled Design of the Modern Web Architecture. In Proc. 22nd International Conference on Software Engineering (ICSE'2000), pages 407-416, Limerick, Ireland, 4-11 June 2000. IEEE CS Press • http://www.ics.uci.edu/~fielding/talks/webarch_9805/index.htm (9 december 2002) • http://www.ics.uci.edu/~fielding/pubs/dissertation/rest_arch_style.htm (9 december 2002) • http://www.xml.com/pub/a/2002/02/20/rest.html (9 december 2002) • http://internet.conveyor.com/RESTwiki/moin.cgi/ShortSummaryOfRest (9 december 2002)

  2. REpresentational State Transfer (REST) ”REST is an abstract model of the web architecture to guide our redesign and definition of the Hypertext Transfer Protocol and the Uniform Resource Identifiers – the goal is to provide a model of how the world wide web (web) should work” (Fielding an Taylor 2000)

  3. http://www.idi.ntnu.no/emner/dif8914/index.html Resource Client Course Material DIF8914 Fundamental issue – an example The user wants to fetch a webpage (resource) and does that by selecting a link (URL). In return the user gets a Representation of the resource (the course material in DIF 8914). The client application is now in a state holding a representation of the course material in DIF 8914. Within this file the user discover other links, and by selecting one of these the user changes the state of the client application (a representation of another resource is downloaded and rendered). between each resource representation the client application changes state (it transfers).  Representational State Transfer

  4. Important issues in REST • Scalability of component interactions • Distributing, components, reducing server processing • Generality of interfaces • All resources are accessed using a generic interface (http methods) • Independent deployment of components • components can be connected dynamically (new clients to old servers, …) • Intermediary components • reduce interaction latency, enforce security, encapsulate legacy systems

  5. Fundamental architectural elements • REST encompasses the fundamental constraints upon components, connectors, and data that define the basis of the Web architecture, and thus the essence of its behavior as a network-based application.

  6. Data elements

  7. Connector types ”The connectors present an abstract interface for component communication” • All interactions are stateless • connectors need not retain state between requests • interactions can be processed in parallell • intermediary can view and understand a request in isolation • forces all info needed for caching to be present

  8. Component types(processing elements)

  9. Architectural views For describing how the elements work together to form an architechture

  10. Process view • For eliciting the interaction relationship among components by revealing the path of data as it flows through the system

  11. Connector view • Mechanics of the communication between components • Particularly interested in the constraints that define the generic resource interface

  12. Data View • A data view of an architecture reveals the application state as information flows through the components

  13. Concluding remarks (1)derived from http://internet.conveyor.com/RESTwiki/moin.cgi/ShortSummaryOfRest(9 december 2002) • Data elements are accessed through a standardized interface. • Components communicate by transferring representations of resources through this interface rather than operating directly upon the resource itself. • Connectors present an abstract interface for component communication, hiding the implementation details of communication mechanisms.

  14. Concluding remarks (2)derived from http://internet.conveyor.com/RESTwiki/moin.cgi/ShortSummaryOfRest(9 december 2002) • Components use connectors to access, provide access or mediate access to resources. • All requests made to connectors must contain all the information necessary for the understanding of that request without depending on any previous request, i.e. they are stateless. • It is important that intermediaries are an explicit aspect of the architecture and because of REST's characteristics, these intermediaries can be more than just dumb routers, they can be active participants.

More Related