SlideShare ist ein Scribd-Unternehmen logo
1 von 12
REST Introduction
Agenda
• REST Concept
• REST Constrains
• REST Data Elements
• REST V.S. SOAP
• REST V.S. SOA
• How to be RESTful
• Q&A
REST Concept
REST is
• Representational State Transfer between Resourcebetween Resource
• A style of software architecture
• A Virtual state-machine
A network of web pages (a virtual state-machine),
where the user progresses through an application by selecting links (state
transitions), resulting in the next page (representing the next state of the
application) being transferred to the user and rendered for their use.
• Client-Server
• Separation principle
• Components Independent
• Stateless
• Session state on the client
• Visibility, reliability and scalability
• Trade off (network performance, etc.)
• Cacheable
• A response can be cacheable
• Efficiency but reduce reliability
• Layered system
• System scalability
• Code on demand (optional)
• Extension after deployment
• Uniform Interface
• Simple
REST Constraints
• Resources and Resource Identifiers
• Uniform Interface (GET, PUT, POST, DELETE)
• Resource Oriented
• Simple and simple is beautiful
REST Data Elements
HTTP Method CRUD Desc.
POST CREATE Create -
GET RETRIEVE Retrieve Safe,Idempotent,Cacheable
PUT UPDATE Update Idempotent
DELETE DELETE Delete Idempotent
Representations
• HTML / XML / images / sounds / …
REST Data Elements
SOAP
• Simple Object Access Protocol
• RPC protocol that go through firewalls
• Communication protocol between applications
• A format for sending messages
REST V.S. SOAP
REST
•“The Web is the universe of globally accessible information”
• Resource oriented
• User-driven interactions via forms
• Few operations (generic interface) on many resources
• URI: Consistent naming mechanism for resources
• Focus on scalability and performance of large scale distributed
hypermedia systems
SOAP
•“The Web is the universal transport for messages”
• Activity/Service oriented
• Orchestrated reliable event flows
• Many operations (service interface) on few resources
• Lack of standard naming mechanism
• Focus on design of integrated (distributed) applications
REST V.S. SOAP
Two of most common styles of use of Web Services
•Service-oriented architecture
• “Message oriented” (SOAP)
• Contract provided by WSDL
•REST
• Focus on interacting with stateful resources, rather than
messages or operations.
REST V.S. SOA
REST V.S. SOA
Correlation
• REST is an architectural style that inherently helps to attain some
of the basic SOA principles.
SOA principles
•Standardized Service Contracts
•Service Loose Coupling
•Service Abstraction
•Service Reusability
•Service Autonomy
•Service Statelessness
•Service Discoverability
•Service Composability
REST principles
•Unique identifiability of the
resources through URIs
•Uniform interface to access the
resources
•Navigability of the resource
representations through
hypermedia
•Statelessness
Q&A
REST Introduction
Thank you!
REST Introduction

Weitere ähnliche Inhalte

Was ist angesagt?

Introduction to FileCatalyst Central
Introduction to FileCatalyst CentralIntroduction to FileCatalyst Central
Introduction to FileCatalyst CentralFileCatalyst
 
Soa 12 jax ws-xml Java API for web services
Soa 12 jax ws-xml Java API for web servicesSoa 12 jax ws-xml Java API for web services
Soa 12 jax ws-xml Java API for web servicesVaibhav Khanna
 
Connecting to Data from Windows Phone 8
Connecting to Data from Windows Phone 8Connecting to Data from Windows Phone 8
Connecting to Data from Windows Phone 8Woodruff Solutions LLC
 
WSO2 Product Release Webinar: WSO2 Developer Studio 3.8
WSO2 Product Release Webinar: WSO2 Developer Studio 3.8WSO2 Product Release Webinar: WSO2 Developer Studio 3.8
WSO2 Product Release Webinar: WSO2 Developer Studio 3.8WSO2
 
Windows communication foundation (part2) jaliya udagedara
Windows communication foundation (part2) jaliya udagedaraWindows communication foundation (part2) jaliya udagedara
Windows communication foundation (part2) jaliya udagedaraJaliya Udagedara
 
Connecting to Data from Windows Phone 8 VSLive! Redmond 2013
Connecting to Data from Windows Phone 8 VSLive! Redmond 2013Connecting to Data from Windows Phone 8 VSLive! Redmond 2013
Connecting to Data from Windows Phone 8 VSLive! Redmond 2013Woodruff Solutions LLC
 
Azure - Incoming network traffic
Azure - Incoming network trafficAzure - Incoming network traffic
Azure - Incoming network trafficAgnieszka Cent
 
[WSO2Con EU 2017] Ballerina: Exploring Data Integration
[WSO2Con EU 2017] Ballerina: Exploring Data Integration[WSO2Con EU 2017] Ballerina: Exploring Data Integration
[WSO2Con EU 2017] Ballerina: Exploring Data IntegrationWSO2
 
Service mesh on Kubernetes - Istio 101
Service mesh on Kubernetes - Istio 101Service mesh on Kubernetes - Istio 101
Service mesh on Kubernetes - Istio 101Huy Vo
 
Web services wsdl
Web services wsdlWeb services wsdl
Web services wsdlKhan625
 
Using the Cascade Server Web Service API, by Artur Tomusiak
Using the Cascade Server Web Service API, by Artur TomusiakUsing the Cascade Server Web Service API, by Artur Tomusiak
Using the Cascade Server Web Service API, by Artur Tomusiakhannonhill
 
Visual Studio LightSwitch
Visual Studio LightSwitchVisual Studio LightSwitch
Visual Studio LightSwitchDanijel Malik
 
Microservices Vienna 2015
Microservices Vienna 2015Microservices Vienna 2015
Microservices Vienna 2015Mike Bild
 
Azure service fabric overview
Azure service fabric overviewAzure service fabric overview
Azure service fabric overviewBaskar rao Dsn
 
Автоматизация тестирования API для начинающих
Автоматизация тестирования API для начинающихАвтоматизация тестирования API для начинающих
Автоматизация тестирования API для начинающихCOMAQA.BY
 

Was ist angesagt? (20)

Proxy server
Proxy serverProxy server
Proxy server
 
Introduction to FileCatalyst Central
Introduction to FileCatalyst CentralIntroduction to FileCatalyst Central
Introduction to FileCatalyst Central
 
Soa 12 jax ws-xml Java API for web services
Soa 12 jax ws-xml Java API for web servicesSoa 12 jax ws-xml Java API for web services
Soa 12 jax ws-xml Java API for web services
 
Connecting to Data from Windows Phone 8
Connecting to Data from Windows Phone 8Connecting to Data from Windows Phone 8
Connecting to Data from Windows Phone 8
 
WSO2 Product Release Webinar: WSO2 Developer Studio 3.8
WSO2 Product Release Webinar: WSO2 Developer Studio 3.8WSO2 Product Release Webinar: WSO2 Developer Studio 3.8
WSO2 Product Release Webinar: WSO2 Developer Studio 3.8
 
Windows communication foundation (part2) jaliya udagedara
Windows communication foundation (part2) jaliya udagedaraWindows communication foundation (part2) jaliya udagedara
Windows communication foundation (part2) jaliya udagedara
 
Remix
RemixRemix
Remix
 
Connecting to Data from Windows Phone 8 VSLive! Redmond 2013
Connecting to Data from Windows Phone 8 VSLive! Redmond 2013Connecting to Data from Windows Phone 8 VSLive! Redmond 2013
Connecting to Data from Windows Phone 8 VSLive! Redmond 2013
 
Azure - Incoming network traffic
Azure - Incoming network trafficAzure - Incoming network traffic
Azure - Incoming network traffic
 
[WSO2Con EU 2017] Ballerina: Exploring Data Integration
[WSO2Con EU 2017] Ballerina: Exploring Data Integration[WSO2Con EU 2017] Ballerina: Exploring Data Integration
[WSO2Con EU 2017] Ballerina: Exploring Data Integration
 
Service mesh on Kubernetes - Istio 101
Service mesh on Kubernetes - Istio 101Service mesh on Kubernetes - Istio 101
Service mesh on Kubernetes - Istio 101
 
Web services wsdl
Web services wsdlWeb services wsdl
Web services wsdl
 
Using the Cascade Server Web Service API, by Artur Tomusiak
Using the Cascade Server Web Service API, by Artur TomusiakUsing the Cascade Server Web Service API, by Artur Tomusiak
Using the Cascade Server Web Service API, by Artur Tomusiak
 
Visual Studio LightSwitch
Visual Studio LightSwitchVisual Studio LightSwitch
Visual Studio LightSwitch
 
Osi model
Osi modelOsi model
Osi model
 
Microservices Vienna 2015
Microservices Vienna 2015Microservices Vienna 2015
Microservices Vienna 2015
 
Azure service fabric overview
Azure service fabric overviewAzure service fabric overview
Azure service fabric overview
 
Автоматизация тестирования API для начинающих
Автоматизация тестирования API для начинающихАвтоматизация тестирования API для начинающих
Автоматизация тестирования API для начинающих
 
OSI LAYER FUNCTIONS
OSI LAYER FUNCTIONSOSI LAYER FUNCTIONS
OSI LAYER FUNCTIONS
 
Spring In Practice
Spring In PracticeSpring In Practice
Spring In Practice
 

Andere mochten auch

taller de fisica
taller de fisicataller de fisica
taller de fisicafundalibra
 
Ruby on Rails - Web Application Framework
Ruby on Rails - Web Application FrameworkRuby on Rails - Web Application Framework
Ruby on Rails - Web Application Frameworkrichards9696
 
Presentación comunicación
Presentación comunicaciónPresentación comunicación
Presentación comunicaciónaltaalcurnia
 
Operations spark innovation - slides from Innovation Social May 2016
Operations spark innovation - slides from Innovation Social May 2016Operations spark innovation - slides from Innovation Social May 2016
Operations spark innovation - slides from Innovation Social May 2016Antony Mayfield
 
Ansee Smart Home Security Products201610
Ansee Smart Home Security Products201610Ansee Smart Home Security Products201610
Ansee Smart Home Security Products201610Royce Heung
 
SIP Presentation Satyam
SIP Presentation SatyamSIP Presentation Satyam
SIP Presentation SatyamSatyam Sharma
 
01 por que não aceitamos os evangelhos apócrifos
01   por que não aceitamos os evangelhos apócrifos01   por que não aceitamos os evangelhos apócrifos
01 por que não aceitamos os evangelhos apócrifosJunio Oliveira
 
Introduction to XPath
Introduction to XPathIntroduction to XPath
Introduction to XPathtorp42
 
Individuelle Massenproduktion
Individuelle MassenproduktionIndividuelle Massenproduktion
Individuelle Massenproduktionguest697150
 
Meilensteine der Instandhaltung 4.0
Meilensteine der Instandhaltung 4.0Meilensteine der Instandhaltung 4.0
Meilensteine der Instandhaltung 4.0Georg Guentner
 
PREGUNTADOS SECUNDARIA STELLA MARIS
PREGUNTADOS SECUNDARIA STELLA MARIS PREGUNTADOS SECUNDARIA STELLA MARIS
PREGUNTADOS SECUNDARIA STELLA MARIS Alejandra Attorresi
 

Andere mochten auch (14)

taller de fisica
taller de fisicataller de fisica
taller de fisica
 
Ruby on Rails - Web Application Framework
Ruby on Rails - Web Application FrameworkRuby on Rails - Web Application Framework
Ruby on Rails - Web Application Framework
 
Presentación comunicación
Presentación comunicaciónPresentación comunicación
Presentación comunicación
 
Css
CssCss
Css
 
Operations spark innovation - slides from Innovation Social May 2016
Operations spark innovation - slides from Innovation Social May 2016Operations spark innovation - slides from Innovation Social May 2016
Operations spark innovation - slides from Innovation Social May 2016
 
Ansee Smart Home Security Products201610
Ansee Smart Home Security Products201610Ansee Smart Home Security Products201610
Ansee Smart Home Security Products201610
 
SIP Presentation Satyam
SIP Presentation SatyamSIP Presentation Satyam
SIP Presentation Satyam
 
01 por que não aceitamos os evangelhos apócrifos
01   por que não aceitamos os evangelhos apócrifos01   por que não aceitamos os evangelhos apócrifos
01 por que não aceitamos os evangelhos apócrifos
 
Introduction to XPath
Introduction to XPathIntroduction to XPath
Introduction to XPath
 
Ips kelas 1 semester 2
Ips kelas 1 semester 2Ips kelas 1 semester 2
Ips kelas 1 semester 2
 
Matematika kelas 1 semester 2
Matematika kelas 1 semester 2Matematika kelas 1 semester 2
Matematika kelas 1 semester 2
 
Individuelle Massenproduktion
Individuelle MassenproduktionIndividuelle Massenproduktion
Individuelle Massenproduktion
 
Meilensteine der Instandhaltung 4.0
Meilensteine der Instandhaltung 4.0Meilensteine der Instandhaltung 4.0
Meilensteine der Instandhaltung 4.0
 
PREGUNTADOS SECUNDARIA STELLA MARIS
PREGUNTADOS SECUNDARIA STELLA MARIS PREGUNTADOS SECUNDARIA STELLA MARIS
PREGUNTADOS SECUNDARIA STELLA MARIS
 

Ähnlich wie Rest introduction

An Overview of Web Services: SOAP and REST
An Overview of Web Services: SOAP and REST An Overview of Web Services: SOAP and REST
An Overview of Web Services: SOAP and REST Ram Awadh Prasad, PMP
 
Web Service Testing By Sheshadri Mishra
Web Service Testing By Sheshadri MishraWeb Service Testing By Sheshadri Mishra
Web Service Testing By Sheshadri MishraSheshadri Mishra
 
REST Introduction.ppt
REST Introduction.pptREST Introduction.ppt
REST Introduction.pptKGSCSEPSGCT
 
Impact of Restful Web Architecture on Performance and Scalability
Impact of Restful Web Architecture on Performance and ScalabilityImpact of Restful Web Architecture on Performance and Scalability
Impact of Restful Web Architecture on Performance and ScalabilitySanchit Gera
 
REST - Representational state transfer
REST - Representational state transferREST - Representational state transfer
REST - Representational state transferTricode (part of Dept)
 
unit -4 spring web services like SOA Arch
unit -4 spring web services like SOA Archunit -4 spring web services like SOA Arch
unit -4 spring web services like SOA Archsudharani127782
 
Unit-5_2 PPT on Distributed Web based System.pdf
Unit-5_2 PPT on Distributed Web based System.pdfUnit-5_2 PPT on Distributed Web based System.pdf
Unit-5_2 PPT on Distributed Web based System.pdframeshwarchintamani
 
Soap and restful webservice
Soap and restful webserviceSoap and restful webservice
Soap and restful webserviceDong Ngoc
 
SOA - Unit 1 - Introduction to SOA with Web Services
SOA - Unit   1 - Introduction to SOA with Web ServicesSOA - Unit   1 - Introduction to SOA with Web Services
SOA - Unit 1 - Introduction to SOA with Web Serviceshamsa nandhini
 
Introduction to SOAP/WSDL Web Services and RESTful Web Services
Introduction to SOAP/WSDL Web Services and RESTful Web ServicesIntroduction to SOAP/WSDL Web Services and RESTful Web Services
Introduction to SOAP/WSDL Web Services and RESTful Web Servicesecosio GmbH
 
Introduction to Restful Web Services
Introduction to Restful Web ServicesIntroduction to Restful Web Services
Introduction to Restful Web Servicesweili_at_slideshare
 

Ähnlich wie Rest introduction (20)

Mini-Training: Let's have a rest
Mini-Training: Let's have a restMini-Training: Let's have a rest
Mini-Training: Let's have a rest
 
An Overview of Web Services: SOAP and REST
An Overview of Web Services: SOAP and REST An Overview of Web Services: SOAP and REST
An Overview of Web Services: SOAP and REST
 
Web Service Testing By Sheshadri Mishra
Web Service Testing By Sheshadri MishraWeb Service Testing By Sheshadri Mishra
Web Service Testing By Sheshadri Mishra
 
REST Introduction.ppt
REST Introduction.pptREST Introduction.ppt
REST Introduction.ppt
 
Web services for banks
Web services for banksWeb services for banks
Web services for banks
 
Rest surekha
Rest surekhaRest surekha
Rest surekha
 
Impact of Restful Web Architecture on Performance and Scalability
Impact of Restful Web Architecture on Performance and ScalabilityImpact of Restful Web Architecture on Performance and Scalability
Impact of Restful Web Architecture on Performance and Scalability
 
Ntg web services
Ntg   web servicesNtg   web services
Ntg web services
 
RESTful services
RESTful servicesRESTful services
RESTful services
 
Unit 2
Unit 2Unit 2
Unit 2
 
Web services
Web servicesWeb services
Web services
 
REST - Representational state transfer
REST - Representational state transferREST - Representational state transfer
REST - Representational state transfer
 
unit -4 spring web services like SOA Arch
unit -4 spring web services like SOA Archunit -4 spring web services like SOA Arch
unit -4 spring web services like SOA Arch
 
Wt unit 6 ppts web services
Wt unit 6 ppts web servicesWt unit 6 ppts web services
Wt unit 6 ppts web services
 
Unit-5_2 PPT on Distributed Web based System.pdf
Unit-5_2 PPT on Distributed Web based System.pdfUnit-5_2 PPT on Distributed Web based System.pdf
Unit-5_2 PPT on Distributed Web based System.pdf
 
REST & RESTful Web Services
REST & RESTful Web ServicesREST & RESTful Web Services
REST & RESTful Web Services
 
Soap and restful webservice
Soap and restful webserviceSoap and restful webservice
Soap and restful webservice
 
SOA - Unit 1 - Introduction to SOA with Web Services
SOA - Unit   1 - Introduction to SOA with Web ServicesSOA - Unit   1 - Introduction to SOA with Web Services
SOA - Unit 1 - Introduction to SOA with Web Services
 
Introduction to SOAP/WSDL Web Services and RESTful Web Services
Introduction to SOAP/WSDL Web Services and RESTful Web ServicesIntroduction to SOAP/WSDL Web Services and RESTful Web Services
Introduction to SOAP/WSDL Web Services and RESTful Web Services
 
Introduction to Restful Web Services
Introduction to Restful Web ServicesIntroduction to Restful Web Services
Introduction to Restful Web Services
 

Mehr von Manav Prasad (20)

Experience with mulesoft
Experience with mulesoftExperience with mulesoft
Experience with mulesoft
 
Mulesoftconnectors
MulesoftconnectorsMulesoftconnectors
Mulesoftconnectors
 
Mule and web services
Mule and web servicesMule and web services
Mule and web services
 
Mulesoft cloudhub
Mulesoft cloudhubMulesoft cloudhub
Mulesoft cloudhub
 
Perl tutorial
Perl tutorialPerl tutorial
Perl tutorial
 
Hibernate presentation
Hibernate presentationHibernate presentation
Hibernate presentation
 
Jpa
JpaJpa
Jpa
 
Spring introduction
Spring introductionSpring introduction
Spring introduction
 
Json
Json Json
Json
 
The spring framework
The spring frameworkThe spring framework
The spring framework
 
Exceptions in java
Exceptions in javaExceptions in java
Exceptions in java
 
Junit
JunitJunit
Junit
 
Xml parsers
Xml parsersXml parsers
Xml parsers
 
Xpath
XpathXpath
Xpath
 
Xslt
XsltXslt
Xslt
 
Xhtml
XhtmlXhtml
Xhtml
 
Introduction to html5
Introduction to html5Introduction to html5
Introduction to html5
 
Ajax
AjaxAjax
Ajax
 
J query
J queryJ query
J query
 
J query1
J query1J query1
J query1
 

Kürzlich hochgeladen

Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationRadu Cotescu
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Miguel Araújo
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfEnterprise Knowledge
 
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure servicePooja Nehwal
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...Neo4j
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024The Digital Insurer
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreternaman860154
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Servicegiselly40
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024Rafal Los
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024The Digital Insurer
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Igalia
 
Top 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live StreamsTop 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live StreamsRoshan Dwivedi
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024The Digital Insurer
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Enterprise Knowledge
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘RTylerCroy
 
Developing An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of BrazilDeveloping An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of BrazilV3cube
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processorsdebabhi2
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking MenDelhi Call girls
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonetsnaman860154
 
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...gurkirankumar98700
 

Kürzlich hochgeladen (20)

Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
 
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
 
Top 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live StreamsTop 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live Streams
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
Developing An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of BrazilDeveloping An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of Brazil
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
 

Rest introduction

  • 2. Agenda • REST Concept • REST Constrains • REST Data Elements • REST V.S. SOAP • REST V.S. SOA • How to be RESTful • Q&A
  • 3. REST Concept REST is • Representational State Transfer between Resourcebetween Resource • A style of software architecture • A Virtual state-machine A network of web pages (a virtual state-machine), where the user progresses through an application by selecting links (state transitions), resulting in the next page (representing the next state of the application) being transferred to the user and rendered for their use.
  • 4. • Client-Server • Separation principle • Components Independent • Stateless • Session state on the client • Visibility, reliability and scalability • Trade off (network performance, etc.) • Cacheable • A response can be cacheable • Efficiency but reduce reliability • Layered system • System scalability • Code on demand (optional) • Extension after deployment • Uniform Interface • Simple REST Constraints
  • 5. • Resources and Resource Identifiers • Uniform Interface (GET, PUT, POST, DELETE) • Resource Oriented • Simple and simple is beautiful REST Data Elements HTTP Method CRUD Desc. POST CREATE Create - GET RETRIEVE Retrieve Safe,Idempotent,Cacheable PUT UPDATE Update Idempotent DELETE DELETE Delete Idempotent
  • 6. Representations • HTML / XML / images / sounds / … REST Data Elements
  • 7. SOAP • Simple Object Access Protocol • RPC protocol that go through firewalls • Communication protocol between applications • A format for sending messages REST V.S. SOAP
  • 8. REST •“The Web is the universe of globally accessible information” • Resource oriented • User-driven interactions via forms • Few operations (generic interface) on many resources • URI: Consistent naming mechanism for resources • Focus on scalability and performance of large scale distributed hypermedia systems SOAP •“The Web is the universal transport for messages” • Activity/Service oriented • Orchestrated reliable event flows • Many operations (service interface) on few resources • Lack of standard naming mechanism • Focus on design of integrated (distributed) applications REST V.S. SOAP
  • 9. Two of most common styles of use of Web Services •Service-oriented architecture • “Message oriented” (SOAP) • Contract provided by WSDL •REST • Focus on interacting with stateful resources, rather than messages or operations. REST V.S. SOA
  • 10. REST V.S. SOA Correlation • REST is an architectural style that inherently helps to attain some of the basic SOA principles. SOA principles •Standardized Service Contracts •Service Loose Coupling •Service Abstraction •Service Reusability •Service Autonomy •Service Statelessness •Service Discoverability •Service Composability REST principles •Unique identifiability of the resources through URIs •Uniform interface to access the resources •Navigability of the resource representations through hypermedia •Statelessness

Hinweis der Redaktion

  1. The software architecture of a program or computing system is the structure or structures of the system, which comprise software components, the externally visible properties of those components, and the relationships between them. Examples: Client-server model Event-driven architecture Service-oriented architecture Three-tier model For distributed hypermedia systems such as the World Wide Web. Is not limited to the HTTP protocol. RESTful architectures can be based on other Application Layer protocols if they already provide a rich and uniform vocabulary for applications based on the transfer of meaningful representational state. A style is a named set of constraints on architectural elements that induces the set of properties desired of the architecture.
  2. Client-Server Improve the portability of the user interface across multiple platforms Improve scalability by simplifying the server components. supporting the Internet-scale Stateless (to server) Request from client to server must contain all of the information necessary to understand the request, Session state is therefore kept entirely on the client. Induces the properties of visibility, reliability, and scalability. Visibility is improved because a monitoring system does not have to look beyond a single request datum in order to determine the full nature of the request. Reliability is improved because it eases the task of recovering from partial failures. Scalability is improved because not having to store state between requests allows the server component to quickly free resources, and further simplifies implementation because the server doesn't have to manage resource usage across requests. Cacheable A response to a request be implicitly or explicitly labeled as cacheable or non-cacheable. The advantage of adding cache constraints is that they have the potential to partially or completely eliminate some interactions, improving efficiency, scalability, and user-perceived performance by reducing the average latency of a series of interactions. The trade-off, however, is that a cache can decrease reliability if stale data within the cache differs significantly from the data that would have been obtained had the request been sent directly to the server. Code on Demand REST allows client functionality to be extended by downloading and executing code in the form of applets or scripts. This simplifies clients by reducing the number of features required to be pre-implemented. Allowing features to be downloaded after deployment improves system extensibility. However, it also reduces visibility, and thus is only an optional constraint within REST. Layered The layered system style allows an architecture to be composed of hierarchical layers by constraining component behavior such that each component cannot "see" beyond the immediate layer with which they are interacting. Layers can be used to encapsulate legacy services and to protect new services from legacy clients, simplifying components by moving infrequently used functionality to a shared intermediary. Intermediaries can also be used to improve system scalability by enabling load balancing of services across multiple networks and processors.
  3. Each Resource has a URI A "collection of resources" may, in itself, be a whole new resource. E.g. a search result collection. In a system for maintaining an employee contact, each user should have their own URI with an appropriate representation. The collection of all employees is another resource.  Dereferencing the URI: Agents may use a URI to access the referenced resource. safe : no side effect, The word "safe" means that if a given HTTP method is invoked, the resource state on the server remains unchanged The word "idempotent" means that, regardless of how many times a given method is invoked, the end result is the same. GET is always safe. No matter how many times you download this web page, the contents of it will not change due to your repeated downloads, since you cannot change the web page in that way. PUT is not safe, because if you store something on the server, then you are creating a new resource or you are modifying a resource. (Of course, one might modify a resource to contain the same representation, but that is a corner case and not the general rule we apply to PUT.) DELETE is clearly not safe. POST is not safe. However, if POST is used to send an e-mail, then why would it not be considered safe?  GET and HEAD are idempotent.  PUT is also idempotent. If you issue PUT 100 times, the resource state on the server is exactly the same as if you use the PUT method one time. DELETE is also idempotent. If you delete a resource once, it is gone. One cannot delete it again and, if one tried, it would have obviously not make state changes to the resource, since there is no resource to change.
  4. Applications running on different operating systems, with different technologies and programming languages Original RPC can not go through firewalls
  5. - Applications running on different operating systems, with different technologies and programming languages
  6. non-RESTful Web services often complain that they are too complex By contract, non-RESTful Web services easy to define new interfaces for remote interaction, often relying on introspection to extract the WSDL, since a minor change on the server (even an upgrade of the SOAP stack) can result in different WSDL and a different service interface Overlap?? SOA using RESTful Web Services