SlideShare a Scribd company logo
Lightning talk
What’s the origin of REST
architectural style?
1990-1991
WorldWideWeb project by Tim Berners-Lee:
● Uniform Resource Identifier (URI)
● HyperText Transfer Protocol (HTTP)
● HyperText Mark-up Language (HTML)
● First web server: http://info.cern.ch
● First web browser: Nexus
● First WYSIWYG HTML editor
August, 1991
The Web’s first page
“The WorldWideWeb (W3) is a wide-area
hypermedia information retrieval initiative
aiming to give universal access to a large
universe of documents.”
Tim Berners-Lee
Web started to grow… exponentially…
1993
Roy Fielding
Co-founder of the Apache HTTP Server Project
Web’s scalability
1993
Roy Fielding
Co-founder of the Apache HTTP Server Project
Web’s scalability is governed by a set of key constraints
Satisfy all of the constraints uniformly
Six categories of constraints = Web’s architectural style
1993
Roy Fielding
Co-founder of the Apache HTTP Server Project
Web’s architectural style
1)Client-server
2)Uniform interface
3)Layered system
4)Cache
5)Stateless
6)Code-on-demand
Web’s architectural style
Client-server
Separation of concerns
Web’s architectural style
Uniform interface
1)Identification of resources
URI
2)Manipulation of resources through representations
3)Self-descriptive messages
4)Hypermedia as the engine of application state
(HATEOAS)
Web’s architectural style
Uniform interface
1)Identification of resources
2)Manipulation of resources through representations
Resource != representation
Representation = a way to interact with the resource
Representations: HTML, JSON, …
3)Self-descriptive messages
4)Hypermedia as the engine of application state
(HATEOAS)
Web’s architectural style
Uniform interface
1)Identification of resources
2)Manipulation of resources through representations
3)Self-descriptive messages
resource’s desired state = client’s request
resource’s current state = response from server
They may include additional details (metadata)
4)Hypermedia as the engine of application state
(HATEOAS)
Web’s architectural style
Uniform interface
1)Identification of resources
2)Manipulation of resources through representations
3)Self-descriptive messages
4)Hypermedia as the engine of application state
(HATEOAS)
Resource’s state representation includes links to
related resources (available “actions”)
Web’s architectural style
Layered system
Proxies, gateways, …
Network-based intermediaries
● Intercept client-server communication for a specific purpose
● Used for enforcing:
Security
Response caching
Load balancing
Web’s architectural style
Cache
● To reduce client-perceived latency
● To increase the overall availability and reliability
of an application
● To control a web server’s load
It reduces the overall cost of the Web
Web’s architectural style
Stateless
● A web server is not required to memorize the
state of its client applications.
● Each client must include all of the contextual
information that it considers relevant in each
interaction with the web server.
The web server can service
a much larger number of clients.
Web’s architectural style
Code-on-demand
Examples: Java applets, Flash, JavaScript, …
Optional constraint, why?
Coupling between web servers and their clients
(the client must be able to understand and
execute the code that it downloads on-demand
from the server)
Standards
● HTTP/1.1
● RFC 3986 (syntax of URI)
After 2000 (Web’s scalability crisis)
● “Representational State Transfer” (REST)
Ph.D. dissertation about Web’s architectural style
by Roy Fielding

More Related Content

PDF
AIDA/Scribo
PPTX
Web hosting service
PPTX
Lightning talk philly 'burbs meetup - 07.13.2015
PDF
STON Media Delivery Server
PPTX
Signal rity1
PPTX
Node ts1
PPTX
Web server
AIDA/Scribo
Web hosting service
Lightning talk philly 'burbs meetup - 07.13.2015
STON Media Delivery Server
Signal rity1
Node ts1
Web server

Similar to What's the origin of REST architectural style? (20)

PPT
Rest introduction
PDF
Taking a REST and being HAPI
PPTX
Overview of REST - Raihan Ullah
PPT
SWS-Lecture5.ppt
PPTX
RESTful APIs
PPTX
RESTful Web Services
PDF
REST in Practice
PPTX
REST & RESTful APIs: The State of Confusion
ODP
Microservices
PDF
-overview of res tful architecture-2
PPTX
Mini-Training: Let's have a rest
PDF
Restful风格ž„web服务架构
PPT
200211 Fielding Apachecon
PDF
Web architecturesWeb architecturesWeb architectures
PPT
Separating REST Facts from Fallacies
PPTX
RESTful services
PPTX
Rest assured
PPT
Rest and beyond
PPTX
A Deep Dive into RESTful API Design Part 1
PPTX
Rest surekha
Rest introduction
Taking a REST and being HAPI
Overview of REST - Raihan Ullah
SWS-Lecture5.ppt
RESTful APIs
RESTful Web Services
REST in Practice
REST & RESTful APIs: The State of Confusion
Microservices
-overview of res tful architecture-2
Mini-Training: Let's have a rest
Restful风格ž„web服务架构
200211 Fielding Apachecon
Web architecturesWeb architecturesWeb architectures
Separating REST Facts from Fallacies
RESTful services
Rest assured
Rest and beyond
A Deep Dive into RESTful API Design Part 1
Rest surekha
Ad

More from Rachel M. Carmena (10)

PDF
2013 - Semana Informática - Seminario Cajón de Sastre
PDF
Talking about craftsmanship with "ensaimadas" and katas (May, 2018)
PDF
The power of accessibility (November, 2018)
PDF
Git challenges
PDF
TDD Workshop (January, 2018)
PDF
Coding Dojo (November, 2017)
PDF
Be open-minded, my friend (June, 2018)
PDF
Talking about craftsmanship with ensaimadas and katas
PDF
Software as a craft (February, 2018)
ODP
Just-in-time compiler (March, 2017)
2013 - Semana Informática - Seminario Cajón de Sastre
Talking about craftsmanship with "ensaimadas" and katas (May, 2018)
The power of accessibility (November, 2018)
Git challenges
TDD Workshop (January, 2018)
Coding Dojo (November, 2017)
Be open-minded, my friend (June, 2018)
Talking about craftsmanship with ensaimadas and katas
Software as a craft (February, 2018)
Just-in-time compiler (March, 2017)
Ad

Recently uploaded (20)

PPTX
Oracle E-Business Suite: A Comprehensive Guide for Modern Enterprises
PDF
Adobe Illustrator 28.6 Crack My Vision of Vector Design
PDF
How to Choose the Right IT Partner for Your Business in Malaysia
PDF
Raksha Bandhan Grocery Pricing Trends in India 2025.pdf
PDF
EN-Survey-Report-SAP-LeanIX-EA-Insights-2025.pdf
PPTX
Introduction to Artificial Intelligence
PDF
Claude Code: Everyone is a 10x Developer - A Comprehensive AI-Powered CLI Tool
PDF
AI in Product Development-omnex systems
PDF
PTS Company Brochure 2025 (1).pdf.......
PDF
Wondershare Filmora 15 Crack With Activation Key [2025
PDF
How to Migrate SBCGlobal Email to Yahoo Easily
PDF
Digital Strategies for Manufacturing Companies
PDF
Which alternative to Crystal Reports is best for small or large businesses.pdf
PDF
Why TechBuilder is the Future of Pickup and Delivery App Development (1).pdf
PDF
Audit Checklist Design Aligning with ISO, IATF, and Industry Standards — Omne...
PPTX
Operating system designcfffgfgggggggvggggggggg
PDF
Addressing The Cult of Project Management Tools-Why Disconnected Work is Hold...
PDF
Internet Downloader Manager (IDM) Crack 6.42 Build 42 Updates Latest 2025
PPTX
history of c programming in notes for students .pptx
PDF
SAP S4 Hana Brochure 3 (PTS SYSTEMS AND SOLUTIONS)
Oracle E-Business Suite: A Comprehensive Guide for Modern Enterprises
Adobe Illustrator 28.6 Crack My Vision of Vector Design
How to Choose the Right IT Partner for Your Business in Malaysia
Raksha Bandhan Grocery Pricing Trends in India 2025.pdf
EN-Survey-Report-SAP-LeanIX-EA-Insights-2025.pdf
Introduction to Artificial Intelligence
Claude Code: Everyone is a 10x Developer - A Comprehensive AI-Powered CLI Tool
AI in Product Development-omnex systems
PTS Company Brochure 2025 (1).pdf.......
Wondershare Filmora 15 Crack With Activation Key [2025
How to Migrate SBCGlobal Email to Yahoo Easily
Digital Strategies for Manufacturing Companies
Which alternative to Crystal Reports is best for small or large businesses.pdf
Why TechBuilder is the Future of Pickup and Delivery App Development (1).pdf
Audit Checklist Design Aligning with ISO, IATF, and Industry Standards — Omne...
Operating system designcfffgfgggggggvggggggggg
Addressing The Cult of Project Management Tools-Why Disconnected Work is Hold...
Internet Downloader Manager (IDM) Crack 6.42 Build 42 Updates Latest 2025
history of c programming in notes for students .pptx
SAP S4 Hana Brochure 3 (PTS SYSTEMS AND SOLUTIONS)

What's the origin of REST architectural style?

  • 1. Lightning talk What’s the origin of REST architectural style?
  • 2. 1990-1991 WorldWideWeb project by Tim Berners-Lee: ● Uniform Resource Identifier (URI) ● HyperText Transfer Protocol (HTTP) ● HyperText Mark-up Language (HTML) ● First web server: http://info.cern.ch ● First web browser: Nexus ● First WYSIWYG HTML editor
  • 3. August, 1991 The Web’s first page “The WorldWideWeb (W3) is a wide-area hypermedia information retrieval initiative aiming to give universal access to a large universe of documents.” Tim Berners-Lee
  • 4. Web started to grow… exponentially…
  • 5. 1993 Roy Fielding Co-founder of the Apache HTTP Server Project Web’s scalability
  • 6. 1993 Roy Fielding Co-founder of the Apache HTTP Server Project Web’s scalability is governed by a set of key constraints Satisfy all of the constraints uniformly Six categories of constraints = Web’s architectural style
  • 7. 1993 Roy Fielding Co-founder of the Apache HTTP Server Project Web’s architectural style 1)Client-server 2)Uniform interface 3)Layered system 4)Cache 5)Stateless 6)Code-on-demand
  • 9. Web’s architectural style Uniform interface 1)Identification of resources URI 2)Manipulation of resources through representations 3)Self-descriptive messages 4)Hypermedia as the engine of application state (HATEOAS)
  • 10. Web’s architectural style Uniform interface 1)Identification of resources 2)Manipulation of resources through representations Resource != representation Representation = a way to interact with the resource Representations: HTML, JSON, … 3)Self-descriptive messages 4)Hypermedia as the engine of application state (HATEOAS)
  • 11. Web’s architectural style Uniform interface 1)Identification of resources 2)Manipulation of resources through representations 3)Self-descriptive messages resource’s desired state = client’s request resource’s current state = response from server They may include additional details (metadata) 4)Hypermedia as the engine of application state (HATEOAS)
  • 12. Web’s architectural style Uniform interface 1)Identification of resources 2)Manipulation of resources through representations 3)Self-descriptive messages 4)Hypermedia as the engine of application state (HATEOAS) Resource’s state representation includes links to related resources (available “actions”)
  • 13. Web’s architectural style Layered system Proxies, gateways, … Network-based intermediaries ● Intercept client-server communication for a specific purpose ● Used for enforcing: Security Response caching Load balancing
  • 14. Web’s architectural style Cache ● To reduce client-perceived latency ● To increase the overall availability and reliability of an application ● To control a web server’s load It reduces the overall cost of the Web
  • 15. Web’s architectural style Stateless ● A web server is not required to memorize the state of its client applications. ● Each client must include all of the contextual information that it considers relevant in each interaction with the web server. The web server can service a much larger number of clients.
  • 16. Web’s architectural style Code-on-demand Examples: Java applets, Flash, JavaScript, … Optional constraint, why? Coupling between web servers and their clients (the client must be able to understand and execute the code that it downloads on-demand from the server)
  • 17. Standards ● HTTP/1.1 ● RFC 3986 (syntax of URI)
  • 18. After 2000 (Web’s scalability crisis) ● “Representational State Transfer” (REST) Ph.D. dissertation about Web’s architectural style by Roy Fielding