1 / 31

Give it a REST already

Give it a REST already. Arnon Rotem -Gal-Oz VP R&D xsights www.xsights.com www.rgoarchitects.com/nblog. Some Theory. Making sense of the terminology soup. Architectural Styles. Architectural Patterns. Design Patterns. Architecture. Design. Code/Detailed Design. SOA vs. REST.

micheline
Download Presentation

Give it a REST already

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. Give it a REST already ArnonRotem-Gal-Oz VP R&D xsights www.xsights.com www.rgoarchitects.com/nblog

  2. Some Theory

  3. Making sense of the terminology soup Architectural Styles Architectural Patterns Design Patterns Architecture Design Code/Detailed Design

  4. SOA vs. REST Distributed Agents Pipes and Filters Layered System Client Server Replicated Repository Uniform Interface Virtual Machine Stateless Comm. Cacheable Code On Demand SOA REST

  5. REST = "Representation State Transfer" WebApp Representation(JSON) Cache (Resource) Get (Latest State) Put (New State in XML) Dispatcher OK

  6. Layers should have some constraints on communications Layer? Layer? Layer? Layer?

  7. Layers should have some constraints on communications Layer Layer Component Componet Component

  8. Client/Server Client Server Request Capabilities (services) Requests initiator Reply

  9. Replicated Repository is about having more than one copy providing the same service looks like one copy better performance and latency copy copy copy copy copy copy copy copy copy

  10. The uniform interface

  11. Document Centric messages provide the client with the needed stateand allow stateless communications

  12. REST also externalize state transitions

  13. Use IDs that are linkse.g. a

  14. Technology Mapping

  15. HTTP is the most common REST implementation

  16. But you can create others Waka canoe

  17. GET = query/read a resource for a representation

  18. PUT = create with ID set by the client / replace

  19. POST = Create a subordinate resource with ID set by server / update

  20. DELETE= remove the URI (most likely delete the resource)

  21. HEAD = GET but only retrieves metadata (headers)

  22. OPTIONS – The currently available verbs / requirements for communication

  23. Why REST?

  24. Example – Resource Manager

  25. http://devrig:52141/RM/Sessions/abc/ • ATOMPUB • Session details • URI (ID) • State (start/end/status etc.) • Resources • Knows status • URI for the Resource representation on the RM • URI for the Resource itself

  26. Common REST misconceptions

  27. REST = CRUD

  28. REST is the ultimate architecture

  29. REST = HTTP

  30. REST will automagically make you write perfect distributed systems

  31. REST is Simple r

More Related