SlideShare une entreprise Scribd logo
1  sur  17
Télécharger pour lire hors ligne
eXtensible REST Services Protocol
Plug-in Architectural Style for the Cloud
http://xrest.googlecode.com
Protocol Objectives

• Running the Web as Platform
• Unify the Experience and Implementation of
  Programmable Web Services


                                 Pub/Sub
        Browser        Blog       Plug-in


                       Social     Twitter
        Desktop       Network     Plug-in



          ...          Mail      Your Tool
Protocol Model

Clients:
 • Consume services on the host
 • Add plug-in references (extensions) to the host
   extension registry




         Browser                          Plug-in A


         Desktop           Host           Plug-in B


           ...                            Plug-in C
Protocol Model

Hosts:
 • Restful application (HTTP: RFC2616)
 • Extension registry (AtomPub: RFC5023)
 • Callback to plug-ins (Web Hooks: http://webhooks.org)



        Browser                         Plug-in A


        Desktop           Host          Plug-in B


           ...                          Plug-in C
Protocol Model


Plug-ins:
 • Receive callback parameters from the host
 • Can decorate the host response to the client.



         Browser                         Plug-in A


         Desktop          Host           Plug-in B


           ...                           Plug-in C
Protocol Runtime


               POST Plug-in A
               extension

     Browser                     Plug-in A


     Desktop              Host   Plug-in B


        ...                      Plug-in C
Protocol Runtime


                            GET Plug-in A
                          acknowledgement


     Browser                          Plug-in A


     Desktop       Host               Plug-in B


        ...                           Plug-in C
Protocol Runtime


                                 OK



     Browser              Plug-in A


     Desktop       Host   Plug-in B


        ...               Plug-in C
Protocol Runtime




                          OK

     Browser                   Plug-in A


     Desktop       Host        Plug-in B


        ...                    Plug-in C
Protocol Runtime




     Browser                          Plug-in A


     Desktop       Host               Plug-in B


        ...                           Plug-in C
                          The service has
                          been extended
Protocol Runtime



               REST call

     Browser                      Plug-in A


     Desktop               Host   Plug-in B


        ...                       Plug-in C
Protocol Runtime



                          Compute
                          response

     Browser                         Plug-in A


     Desktop       Host              Plug-in B


        ...                          Plug-in C
Protocol Runtime

                                POST
                           response body +
                          extension header


     Browser                         Plug-in A


     Desktop       Host              Plug-in B


        ...                          Plug-in C
Protocol Runtime

                                  Decorated
                               response body


     Browser              Plug-in A


     Desktop       Host   Plug-in B


        ...               Plug-in C
Protocol Runtime



                        Decorated
                     response body
     Browser                         Plug-in A


     Desktop       Host              Plug-in B


        ...                          Plug-in C
Scheduling



             Asynchronous Callbacks:
              • May be executed concurrently
              • Cannot decorate the host response



             Synchronous Callbacks:
              • Sequential execution
              • Can decorate the host response
              • Flexible to failures
Resources


Specification: http://tiny.cc/xrest



Questions and feedbacks:
xrest@googlegroups.com

More infos:
http://xrest.googlecode.com

Contenu connexe

Tendances

IBM XL Compilers Performance Tuning 2016-11-18
IBM XL Compilers Performance Tuning 2016-11-18IBM XL Compilers Performance Tuning 2016-11-18
IBM XL Compilers Performance Tuning 2016-11-18
Yaoqing Gao
 

Tendances (20)

Embedded Erlang, Nerves, and SumoBots
Embedded Erlang, Nerves, and SumoBotsEmbedded Erlang, Nerves, and SumoBots
Embedded Erlang, Nerves, and SumoBots
 
Performance tips for Symfony2 & PHP
Performance tips for Symfony2 & PHPPerformance tips for Symfony2 & PHP
Performance tips for Symfony2 & PHP
 
Compilation of c
Compilation of cCompilation of c
Compilation of c
 
Using Erlang in an Embedded and Cross-Compiled World
Using Erlang in an Embedded and Cross-Compiled WorldUsing Erlang in an Embedded and Cross-Compiled World
Using Erlang in an Embedded and Cross-Compiled World
 
Talk Python To Me: Stream Processing in your favourite Language with Beam on ...
Talk Python To Me: Stream Processing in your favourite Language with Beam on ...Talk Python To Me: Stream Processing in your favourite Language with Beam on ...
Talk Python To Me: Stream Processing in your favourite Language with Beam on ...
 
GNU Compiler Collection - August 2005
GNU Compiler Collection - August 2005GNU Compiler Collection - August 2005
GNU Compiler Collection - August 2005
 
Pc54
Pc54Pc54
Pc54
 
C compiler-ide
C compiler-ideC compiler-ide
C compiler-ide
 
Flink Forward Berlin 2018: Thomas Weise & Aljoscha Krettek - "Python Streamin...
Flink Forward Berlin 2018: Thomas Weise & Aljoscha Krettek - "Python Streamin...Flink Forward Berlin 2018: Thomas Weise & Aljoscha Krettek - "Python Streamin...
Flink Forward Berlin 2018: Thomas Weise & Aljoscha Krettek - "Python Streamin...
 
GNU GCC - what just a compiler...?
GNU GCC - what just a compiler...?GNU GCC - what just a compiler...?
GNU GCC - what just a compiler...?
 
C intro
C introC intro
C intro
 
Let’s Build a Python Profiler in 25 LOC
Let’s Build a Python Profiler in 25 LOCLet’s Build a Python Profiler in 25 LOC
Let’s Build a Python Profiler in 25 LOC
 
C under Linux
C under LinuxC under Linux
C under Linux
 
The Casting Demonstrator. Using the Raspberry Pi for graphics and simulated f...
The Casting Demonstrator. Using the Raspberry Pi for graphics and simulated f...The Casting Demonstrator. Using the Raspberry Pi for graphics and simulated f...
The Casting Demonstrator. Using the Raspberry Pi for graphics and simulated f...
 
Micro servoces-choose-the-right-tools-programing-language
Micro servoces-choose-the-right-tools-programing-languageMicro servoces-choose-the-right-tools-programing-language
Micro servoces-choose-the-right-tools-programing-language
 
2021laravelconftwslides6
2021laravelconftwslides62021laravelconftwslides6
2021laravelconftwslides6
 
OFI Overview 2019 Webinar
OFI Overview 2019 WebinarOFI Overview 2019 Webinar
OFI Overview 2019 Webinar
 
IBM XL Compilers Performance Tuning 2016-11-18
IBM XL Compilers Performance Tuning 2016-11-18IBM XL Compilers Performance Tuning 2016-11-18
IBM XL Compilers Performance Tuning 2016-11-18
 
Konstruktion omkring en Raspberry Pi
Konstruktion omkring en Raspberry PiKonstruktion omkring en Raspberry Pi
Konstruktion omkring en Raspberry Pi
 
Csc240 -lecture_3
Csc240  -lecture_3Csc240  -lecture_3
Csc240 -lecture_3
 

En vedette

En vedette (16)

XQuery in the Cloud
XQuery in the CloudXQuery in the Cloud
XQuery in the Cloud
 
JSONiq - The SQL of NoSQL
JSONiq - The SQL of NoSQLJSONiq - The SQL of NoSQL
JSONiq - The SQL of NoSQL
 
Memorias ram2
Memorias ram2Memorias ram2
Memorias ram2
 
Aspect-Oriented Programming for PHP
Aspect-Oriented Programming for PHPAspect-Oriented Programming for PHP
Aspect-Oriented Programming for PHP
 
Ortografía
OrtografíaOrtografía
Ortografía
 
Carrillo carrillo cevallos_presentacionfinal (1)
Carrillo carrillo cevallos_presentacionfinal  (1)Carrillo carrillo cevallos_presentacionfinal  (1)
Carrillo carrillo cevallos_presentacionfinal (1)
 
распутин григорий ефимович
распутин григорий ефимовичраспутин григорий ефимович
распутин григорий ефимович
 
Краса у сучасному світі
Краса у сучасному світі Краса у сучасному світі
Краса у сучасному світі
 
Arbitration and Choice of Law in Sub-Saharan Africa, Peter N. Levenberg, Flor...
Arbitration and Choice of Law in Sub-Saharan Africa, Peter N. Levenberg, Flor...Arbitration and Choice of Law in Sub-Saharan Africa, Peter N. Levenberg, Flor...
Arbitration and Choice of Law in Sub-Saharan Africa, Peter N. Levenberg, Flor...
 
Mapa mental
Mapa mentalMapa mental
Mapa mental
 
Nrf 237-pemex-2009
Nrf 237-pemex-2009Nrf 237-pemex-2009
Nrf 237-pemex-2009
 
D01 c
D01 cD01 c
D01 c
 
Plan 2017 SOLAIAPPAN
Plan 2017 SOLAIAPPANPlan 2017 SOLAIAPPAN
Plan 2017 SOLAIAPPAN
 
Nrf 053-pemex-2006 (1)
Nrf 053-pemex-2006 (1)Nrf 053-pemex-2006 (1)
Nrf 053-pemex-2006 (1)
 
Cibernetica 2
Cibernetica 2Cibernetica 2
Cibernetica 2
 
Concierge development program 2016
Concierge development program 2016 Concierge development program 2016
Concierge development program 2016
 

Similaire à XREST Protocol

Scaling PostgreSQL with Skytools
Scaling PostgreSQL with SkytoolsScaling PostgreSQL with Skytools
Scaling PostgreSQL with Skytools
Gavin Roy
 
Балансировщики KEMP для Microsoft Lync, Skype for Business
Балансировщики KEMP для Microsoft Lync, Skype for BusinessБалансировщики KEMP для Microsoft Lync, Skype for Business
Балансировщики KEMP для Microsoft Lync, Skype for Business
Alexander Zhuravlev, Ph.D.
 

Similaire à XREST Protocol (20)

Web rtc 入門
Web rtc 入門Web rtc 入門
Web rtc 入門
 
dotNetConf2019
dotNetConf2019dotNetConf2019
dotNetConf2019
 
How to Create a Service in Choreo
How to Create a Service in ChoreoHow to Create a Service in Choreo
How to Create a Service in Choreo
 
APIdays Helsinki 2019 - gRPC: Lightning Fast, Self-Documenting APIs with Moha...
APIdays Helsinki 2019 - gRPC: Lightning Fast, Self-Documenting APIs with Moha...APIdays Helsinki 2019 - gRPC: Lightning Fast, Self-Documenting APIs with Moha...
APIdays Helsinki 2019 - gRPC: Lightning Fast, Self-Documenting APIs with Moha...
 
The Internal Architecture of Chrome Developer Tools
The Internal Architecture of Chrome Developer ToolsThe Internal Architecture of Chrome Developer Tools
The Internal Architecture of Chrome Developer Tools
 
Scaling PostgreSQL with Skytools
Scaling PostgreSQL with SkytoolsScaling PostgreSQL with Skytools
Scaling PostgreSQL with Skytools
 
Web server
Web serverWeb server
Web server
 
Gatekeeper: API gateway
Gatekeeper: API gatewayGatekeeper: API gateway
Gatekeeper: API gateway
 
H2O - the optimized HTTP server
H2O - the optimized HTTP serverH2O - the optimized HTTP server
H2O - the optimized HTTP server
 
BizTalk Server Extensibility
BizTalk Server ExtensibilityBizTalk Server Extensibility
BizTalk Server Extensibility
 
From ZERO to REST in an hour
From ZERO to REST in an hour From ZERO to REST in an hour
From ZERO to REST in an hour
 
.NET Core Today and Tomorrow
.NET Core Today and Tomorrow.NET Core Today and Tomorrow
.NET Core Today and Tomorrow
 
ASP.NET Core 3.0 Deep Dive
ASP.NET Core 3.0 Deep DiveASP.NET Core 3.0 Deep Dive
ASP.NET Core 3.0 Deep Dive
 
Developing applications with Hyperledger Fabric SDK
Developing applications with Hyperledger Fabric SDKDeveloping applications with Hyperledger Fabric SDK
Developing applications with Hyperledger Fabric SDK
 
Driving containerd operations with gRPC
Driving containerd operations with gRPCDriving containerd operations with gRPC
Driving containerd operations with gRPC
 
How to Scale Operations for a Multi-Cloud Platform using PCF
How to Scale Operations for a Multi-Cloud Platform using PCFHow to Scale Operations for a Multi-Cloud Platform using PCF
How to Scale Operations for a Multi-Cloud Platform using PCF
 
Improve customer engagement and productivity with conversational ai
Improve customer engagement and productivity with conversational aiImprove customer engagement and productivity with conversational ai
Improve customer engagement and productivity with conversational ai
 
Deep dive into serverless on Google Cloud
Deep dive into serverless on Google CloudDeep dive into serverless on Google Cloud
Deep dive into serverless on Google Cloud
 
Distributing UI Libraries: in a post Web-Component world
Distributing UI Libraries: in a post Web-Component worldDistributing UI Libraries: in a post Web-Component world
Distributing UI Libraries: in a post Web-Component world
 
Балансировщики KEMP для Microsoft Lync, Skype for Business
Балансировщики KEMP для Microsoft Lync, Skype for BusinessБалансировщики KEMP для Microsoft Lync, Skype for Business
Балансировщики KEMP для Microsoft Lync, Skype for Business
 

Plus de William Candillon

Plus de William Candillon (7)

Scalable XQuery Processing with Zorba on top of MongoDB
Scalable XQuery Processing with Zorba on top of MongoDBScalable XQuery Processing with Zorba on top of MongoDB
Scalable XQuery Processing with Zorba on top of MongoDB
 
XQuery Rocks
XQuery RocksXQuery Rocks
XQuery Rocks
 
Cutting Edge Data Processing with PHP & XQuery
Cutting Edge Data Processing with PHP & XQueryCutting Edge Data Processing with PHP & XQuery
Cutting Edge Data Processing with PHP & XQuery
 
Not your Grandma's XQuery
Not your Grandma's XQueryNot your Grandma's XQuery
Not your Grandma's XQuery
 
XQuery Design Patterns
XQuery Design PatternsXQuery Design Patterns
XQuery Design Patterns
 
Extending and scripting PDT
Extending and scripting PDTExtending and scripting PDT
Extending and scripting PDT
 
My Summer of Code
My Summer of CodeMy Summer of Code
My Summer of Code
 

Dernier

Dernier (20)

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
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
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
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
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...
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
Evaluating the top large language models.pdf
Evaluating the top large language models.pdfEvaluating the top large language models.pdf
Evaluating the top large language models.pdf
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
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
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 

XREST Protocol

  • 1. eXtensible REST Services Protocol Plug-in Architectural Style for the Cloud http://xrest.googlecode.com
  • 2. Protocol Objectives • Running the Web as Platform • Unify the Experience and Implementation of Programmable Web Services Pub/Sub Browser Blog Plug-in Social Twitter Desktop Network Plug-in ... Mail Your Tool
  • 3. Protocol Model Clients: • Consume services on the host • Add plug-in references (extensions) to the host extension registry Browser Plug-in A Desktop Host Plug-in B ... Plug-in C
  • 4. Protocol Model Hosts: • Restful application (HTTP: RFC2616) • Extension registry (AtomPub: RFC5023) • Callback to plug-ins (Web Hooks: http://webhooks.org) Browser Plug-in A Desktop Host Plug-in B ... Plug-in C
  • 5. Protocol Model Plug-ins: • Receive callback parameters from the host • Can decorate the host response to the client. Browser Plug-in A Desktop Host Plug-in B ... Plug-in C
  • 6. Protocol Runtime POST Plug-in A extension Browser Plug-in A Desktop Host Plug-in B ... Plug-in C
  • 7. Protocol Runtime GET Plug-in A acknowledgement Browser Plug-in A Desktop Host Plug-in B ... Plug-in C
  • 8. Protocol Runtime OK Browser Plug-in A Desktop Host Plug-in B ... Plug-in C
  • 9. Protocol Runtime OK Browser Plug-in A Desktop Host Plug-in B ... Plug-in C
  • 10. Protocol Runtime Browser Plug-in A Desktop Host Plug-in B ... Plug-in C The service has been extended
  • 11. Protocol Runtime REST call Browser Plug-in A Desktop Host Plug-in B ... Plug-in C
  • 12. Protocol Runtime Compute response Browser Plug-in A Desktop Host Plug-in B ... Plug-in C
  • 13. Protocol Runtime POST response body + extension header Browser Plug-in A Desktop Host Plug-in B ... Plug-in C
  • 14. Protocol Runtime Decorated response body Browser Plug-in A Desktop Host Plug-in B ... Plug-in C
  • 15. Protocol Runtime Decorated response body Browser Plug-in A Desktop Host Plug-in B ... Plug-in C
  • 16. Scheduling Asynchronous Callbacks: • May be executed concurrently • Cannot decorate the host response Synchronous Callbacks: • Sequential execution • Can decorate the host response • Flexible to failures
  • 17. Resources Specification: http://tiny.cc/xrest Questions and feedbacks: xrest@googlegroups.com More infos: http://xrest.googlecode.com