SlideShare a Scribd company logo
1 of 15
Virtualizing Services and Resources with ProBus: 
          The WS‐Policy‐Aware Service and Resource Bus




            Ralph Mietzner, Tammo van Lessen, Alexander Wiese, Matthias Wieland,
                          Dimka Karastoyanova, and Frank Leymann
                            Institute of Architecture of Application Systems
                                                  (IAAS)
University of Stuttgart
Universitätsstr. 38
70569 Stuttgart
Germany
                                                                      tammo.van.lessen@iaas.uni‐stuttgart.de
The Talk Today

              Motivation and Introduction
              Classification of WS‐Policy based Service 
              Selection
              The ProBus approach for Web Services
              The ProBus approach for WS‐Resources
              Architecture & Implementation
              Conclusions & Outlook



© Ralph Mietzner, Tammo van Lessen, Alexander Wiese, Matthias Wieland, Dimka Karastoyanova, and Frank Leymann   2
Service/Resource Selection

                                                                             Service 
                                                                             Registry



                                                           find                                      publish



                                                  Service                                               Service 
                                                 Requestor                        bind                 Provider


              WS‐Policy provides a promising approach to Web service/Resource 
              selection based on non‐functional properties.
              Established approaches are quite cumbersome and not as easy as they 
              could be.
              We have identified 3 classes of WS‐Policy based service selection.
© Ralph Mietzner, Tammo van Lessen, Alexander Wiese, Matthias Wieland, Dimka Karastoyanova, and Frank Leymann      3
Classes of WS‐Policy based Service Selection

              Class 1: Manual Service Selection




                          Advantages: Easy to use, no “magic” involved.
                          Disadvantages: inflexible, not really loosely coupled
© Ralph Mietzner, Tammo van Lessen, Alexander Wiese, Matthias Wieland, Dimka Karastoyanova, and Frank Leymann   5
Classes of WS‐Policy based Service Selection

              Class 2: Policy Based Service Selection




                          Advantages: more flexible
                          Disadvantes: Additional components are needed on 
                          client‐side (for “find” and “select”)



© Ralph Mietzner, Tammo van Lessen, Alexander Wiese, Matthias Wieland, Dimka Karastoyanova, and Frank Leymann   6
Classes of WS‐Policy based Service Selection

              Class 3: The ProBus approach




                          Advantages: easy to use, “make it happen” semantics, 
                          more flexibility as the bus is aware of any conversations




© Ralph Mietzner, Tammo van Lessen, Alexander Wiese, Matthias Wieland, Dimka Karastoyanova, and Frank Leymann   7
Sample Request


               <soap:Envelope ...>
                 <soap:Header>
                   <rb:requiredPolicy>
                     <wsp:Policy>
                       <wsp:ExactlyOne>
                         <wsp:All>
                           <prn:printer prn:maxCostPerPage="$0.3"/>
                         </wsp:All>
                       </wsp:ExactlyOne>
                     </wsp:Policy>
                   </rb:requiredPolicy>
                 </soap:Header>
                 <soap:Body>
                   <!-- Payload of the message -->
                 </soap:Body>
               </soap:Envelope>




© Ralph Mietzner, Tammo van Lessen, Alexander Wiese, Matthias Wieland, Dimka Karastoyanova, and Frank Leymann   8
Post‐Processing Rules

              When only the bus takes care of policy matchmaking, 
              it must be aware of domain‐specific details
                          E.g. “There is a match when costPerPage of a printer is 
                          less or equal to a given amount”
              XPath‐based post‐processor

              <rb:XPathRules rb:assertionQName="prn:printer" ...>
                <rb:Rule>
                  $reqAssertion/@prn:maxCostPerPage <=
                                      $provAssertion/@prn:maxCostPerPage
                </rb:Rule>
                <!-- additional rules for this assertion -->
              </rb:XPathRules>




© Ralph Mietzner, Tammo van Lessen, Alexander Wiese, Matthias Wieland, Dimka Karastoyanova, and Frank Leymann   9
Using ProBus for Dynamic Resource Selection

              Sample Scenario: Printer Selection




© Ralph Mietzner, Tammo van Lessen, Alexander Wiese, Matthias Wieland, Dimka Karastoyanova, and Frank Leymann   10
How to apply the ProBus approach to WSRF

              Defining Policies Relating to Resource Properties
                          New WS‐Policy assertion type: resource property 
                          condition
                                                                                                                Resource Property Document
            <prn:Printer>
              <prn:waitingQueue>10</prn:waitingQueue>
              <prn:costPerPage>0.03</prn:costPerPage>
              <!--other resource properties -->
            </prn:Printer>

            <wsp:Policy ...>
                                                                                                                                       Request Policy
              <wsp:ExactlyOne>
                <wsp:All>
                  <!-- some assertions -->
                  <rb:resourcePropertyCondition rb:type="prn:printer">
                    <rb:XPath rb:propertyQName="prn:waitingQueue">
                        number(prn:waitingQueue/text()) <10
                    </rb:XPath>
                  </rb:resourcePropertyCondition>
                  <!-- more assertions -->
                </wsp:All>
              </wsp:ExactlyOne>
            </wsp:Policy>
© Ralph Mietzner, Tammo van Lessen, Alexander Wiese, Matthias Wieland, Dimka Karastoyanova, and Frank Leymann                                    11
How to apply the ProBus approach to WSRF

              Conversations
                          Resources are stateful, hence the EPR is important for 
                          subsequent requests




              Dynamic Resource Management
                          Annotations for factory operations
              Exception Handling
                          “What happens, if a resource is not available (anymore)?”
                          New fault type: noSuitableResourceFound
© Ralph Mietzner, Tammo van Lessen, Alexander Wiese, Matthias Wieland, Dimka Karastoyanova, and Frank Leymann   12
Architecture and Implementation




              Implementation based on Apache ServiceMix
                          Policy‐aware message routing
                          Pluggable processors for post‐processing rules
                          Deployment support for policies, post‐processing rules and 
                          resource factory descriptors
© Ralph Mietzner, Tammo van Lessen, Alexander Wiese, Matthias Wieland, Dimka Karastoyanova, and Frank Leymann   13
Conclusions and Outlook
              Conclusions
                          One‐step service/resource selection completely decouples 
                          service providers and service consumers
                          XPath‐based post‐processing rules allow for fine‐granular 
                          domain‐specific policy matchmaking
                          WS‐Policy can be used in conjunction with WSRF and 
                          helps to easily discover suited resources for a particular 
                          request
              Future Work
                          We plan to combine ProBus with a BPEL engine in order to 
                          define dynamic policy‐based provisioning workflows on 
                          standard based SOA infrastructures
                          We investigate how ProBus can help to achieve better fail‐
                          over behaviors
© Ralph Mietzner, Tammo van Lessen, Alexander Wiese, Matthias Wieland, Dimka Karastoyanova, and Frank Leymann   14
Thank you for your attention!

                                                         Any Questions?



© Ralph Mietzner, Tammo van Lessen, Alexander Wiese, Matthias Wieland, Dimka Karastoyanova, and Frank Leymann   15
End of Document

More Related Content

Similar to Virtualizing Services and Resources with ProBus: The WS-Policy-Aware Service and Resource Bus

Service operator aware trust scheme for resource matchmaking across multiple ...
Service operator aware trust scheme for resource matchmaking across multiple ...Service operator aware trust scheme for resource matchmaking across multiple ...
Service operator aware trust scheme for resource matchmaking across multiple ...ieeepondy
 
ISP Connectivity Webinar: No Longer a Black Box
ISP Connectivity Webinar: No Longer a Black BoxISP Connectivity Webinar: No Longer a Black Box
ISP Connectivity Webinar: No Longer a Black BoxThousandEyes
 
Managing Enterprise Services through Service Versioning & Governance - Impact...
Managing Enterprise Services through Service Versioning & Governance - Impact...Managing Enterprise Services through Service Versioning & Governance - Impact...
Managing Enterprise Services through Service Versioning & Governance - Impact...Prolifics
 
Avoiding disaster recovery disasters
Avoiding disaster recovery disastersAvoiding disaster recovery disasters
Avoiding disaster recovery disastersAlexandra Matthiesen
 
The MTTR Chronicles: Evolution of SRE Self Service Operations Platform
The MTTR Chronicles: Evolution of SRE Self Service Operations PlatformThe MTTR Chronicles: Evolution of SRE Self Service Operations Platform
The MTTR Chronicles: Evolution of SRE Self Service Operations Platformjayank87
 
Risk Thinking for Cloud-Based Application Services
Risk Thinking for Cloud-Based Application ServicesRisk Thinking for Cloud-Based Application Services
Risk Thinking for Cloud-Based Application ServicesEric Bauer
 
Network Management and Flow Analysis in Today’s Dense IT Environments
Network Management and Flow Analysis in Today’s Dense IT EnvironmentsNetwork Management and Flow Analysis in Today’s Dense IT Environments
Network Management and Flow Analysis in Today’s Dense IT EnvironmentsSolarWinds
 
Service Mesh CTO Forum (Draft 3)
Service Mesh CTO Forum (Draft 3)Service Mesh CTO Forum (Draft 3)
Service Mesh CTO Forum (Draft 3)Rick Hightower
 
High-Speed Reactive Microservices - trials and tribulations
High-Speed Reactive Microservices - trials and tribulationsHigh-Speed Reactive Microservices - trials and tribulations
High-Speed Reactive Microservices - trials and tribulationsRick Hightower
 
Summit 2009 performance-tuning_banner
Summit 2009 performance-tuning_bannerSummit 2009 performance-tuning_banner
Summit 2009 performance-tuning_bannerGreg Turmel
 
Bottlenecks exposed web app db servers
Bottlenecks exposed web app db serversBottlenecks exposed web app db servers
Bottlenecks exposed web app db serversUpender Dravidum
 
A scalable server architecture for mobile presence services
A scalable server architecture for mobile presence servicesA scalable server architecture for mobile presence services
A scalable server architecture for mobile presence servicesSree Chinni
 
Meetup Microservices Commandments
Meetup Microservices CommandmentsMeetup Microservices Commandments
Meetup Microservices CommandmentsBill Zajac
 
RabbitMQ Implementation as Message Broker in Distributed Application with RES...
RabbitMQ Implementation as Message Broker in Distributed Application with RES...RabbitMQ Implementation as Message Broker in Distributed Application with RES...
RabbitMQ Implementation as Message Broker in Distributed Application with RES...IJCSIS Research Publications
 
SWsoft Hosting Solutions for SaaS
SWsoft Hosting Solutions for SaaSSWsoft Hosting Solutions for SaaS
SWsoft Hosting Solutions for SaaSwebhostingguy
 

Similar to Virtualizing Services and Resources with ProBus: The WS-Policy-Aware Service and Resource Bus (20)

Service operator aware trust scheme for resource matchmaking across multiple ...
Service operator aware trust scheme for resource matchmaking across multiple ...Service operator aware trust scheme for resource matchmaking across multiple ...
Service operator aware trust scheme for resource matchmaking across multiple ...
 
ISP Connectivity Webinar: No Longer a Black Box
ISP Connectivity Webinar: No Longer a Black BoxISP Connectivity Webinar: No Longer a Black Box
ISP Connectivity Webinar: No Longer a Black Box
 
Managing Enterprise Services through Service Versioning & Governance - Impact...
Managing Enterprise Services through Service Versioning & Governance - Impact...Managing Enterprise Services through Service Versioning & Governance - Impact...
Managing Enterprise Services through Service Versioning & Governance - Impact...
 
Avoiding disaster recovery disasters
Avoiding disaster recovery disastersAvoiding disaster recovery disasters
Avoiding disaster recovery disasters
 
Avoiding disaster recovery disasters
Avoiding disaster recovery disastersAvoiding disaster recovery disasters
Avoiding disaster recovery disasters
 
The MTTR Chronicles: Evolution of SRE Self Service Operations Platform
The MTTR Chronicles: Evolution of SRE Self Service Operations PlatformThe MTTR Chronicles: Evolution of SRE Self Service Operations Platform
The MTTR Chronicles: Evolution of SRE Self Service Operations Platform
 
Risk Thinking for Cloud-Based Application Services
Risk Thinking for Cloud-Based Application ServicesRisk Thinking for Cloud-Based Application Services
Risk Thinking for Cloud-Based Application Services
 
Network Management and Flow Analysis in Today’s Dense IT Environments
Network Management and Flow Analysis in Today’s Dense IT EnvironmentsNetwork Management and Flow Analysis in Today’s Dense IT Environments
Network Management and Flow Analysis in Today’s Dense IT Environments
 
Presence cloud
Presence cloudPresence cloud
Presence cloud
 
Service Mesh CTO Forum (Draft 3)
Service Mesh CTO Forum (Draft 3)Service Mesh CTO Forum (Draft 3)
Service Mesh CTO Forum (Draft 3)
 
Perf 101-lab-slideshare
Perf 101-lab-slidesharePerf 101-lab-slideshare
Perf 101-lab-slideshare
 
High-Speed Reactive Microservices - trials and tribulations
High-Speed Reactive Microservices - trials and tribulationsHigh-Speed Reactive Microservices - trials and tribulations
High-Speed Reactive Microservices - trials and tribulations
 
Summit 2009 performance-tuning_banner
Summit 2009 performance-tuning_bannerSummit 2009 performance-tuning_banner
Summit 2009 performance-tuning_banner
 
Chapter01.pdf
Chapter01.pdfChapter01.pdf
Chapter01.pdf
 
Bottlenecks exposed web app db servers
Bottlenecks exposed web app db serversBottlenecks exposed web app db servers
Bottlenecks exposed web app db servers
 
A scalable server architecture for mobile presence services
A scalable server architecture for mobile presence servicesA scalable server architecture for mobile presence services
A scalable server architecture for mobile presence services
 
Meetup Microservices Commandments
Meetup Microservices CommandmentsMeetup Microservices Commandments
Meetup Microservices Commandments
 
RabbitMQ Implementation as Message Broker in Distributed Application with RES...
RabbitMQ Implementation as Message Broker in Distributed Application with RES...RabbitMQ Implementation as Message Broker in Distributed Application with RES...
RabbitMQ Implementation as Message Broker in Distributed Application with RES...
 
Kartheek Resume
Kartheek ResumeKartheek Resume
Kartheek Resume
 
SWsoft Hosting Solutions for SaaS
SWsoft Hosting Solutions for SaaSSWsoft Hosting Solutions for SaaS
SWsoft Hosting Solutions for SaaS
 

More from Tammo van Lessen

SOA-based Business Integration with Eclipse BPEL and Apache ODE
SOA-based Business Integration with Eclipse BPEL and Apache ODESOA-based Business Integration with Eclipse BPEL and Apache ODE
SOA-based Business Integration with Eclipse BPEL and Apache ODETammo van Lessen
 
Facilitating Rich Data Manipulation in BPEL using E4X
Facilitating Rich Data Manipulation in BPEL using E4XFacilitating Rich Data Manipulation in BPEL using E4X
Facilitating Rich Data Manipulation in BPEL using E4XTammo van Lessen
 
Formalizing Message Exchange Patterns using BPEL light
Formalizing Message Exchange Patterns using BPEL lightFormalizing Message Exchange Patterns using BPEL light
Formalizing Message Exchange Patterns using BPEL lightTammo van Lessen
 
An Execution Engine For Semantic Business Processes
An Execution Engine For Semantic Business ProcessesAn Execution Engine For Semantic Business Processes
An Execution Engine For Semantic Business ProcessesTammo van Lessen
 
Web Services Orchestration with BPEL 2.0
Web Services Orchestration with BPEL 2.0Web Services Orchestration with BPEL 2.0
Web Services Orchestration with BPEL 2.0Tammo van Lessen
 

More from Tammo van Lessen (6)

SOA-based Business Integration with Eclipse BPEL and Apache ODE
SOA-based Business Integration with Eclipse BPEL and Apache ODESOA-based Business Integration with Eclipse BPEL and Apache ODE
SOA-based Business Integration with Eclipse BPEL and Apache ODE
 
Facilitating Rich Data Manipulation in BPEL using E4X
Facilitating Rich Data Manipulation in BPEL using E4XFacilitating Rich Data Manipulation in BPEL using E4X
Facilitating Rich Data Manipulation in BPEL using E4X
 
Formalizing Message Exchange Patterns using BPEL light
Formalizing Message Exchange Patterns using BPEL lightFormalizing Message Exchange Patterns using BPEL light
Formalizing Message Exchange Patterns using BPEL light
 
BPM meets Semantic Web
BPM meets Semantic WebBPM meets Semantic Web
BPM meets Semantic Web
 
An Execution Engine For Semantic Business Processes
An Execution Engine For Semantic Business ProcessesAn Execution Engine For Semantic Business Processes
An Execution Engine For Semantic Business Processes
 
Web Services Orchestration with BPEL 2.0
Web Services Orchestration with BPEL 2.0Web Services Orchestration with BPEL 2.0
Web Services Orchestration with BPEL 2.0
 

Recently uploaded

TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024Lonnie McRorey
 
So einfach geht modernes Roaming fuer Notes und Nomad.pdf
So einfach geht modernes Roaming fuer Notes und Nomad.pdfSo einfach geht modernes Roaming fuer Notes und Nomad.pdf
So einfach geht modernes Roaming fuer Notes und Nomad.pdfpanagenda
 
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...Wes McKinney
 
Potential of AI (Generative AI) in Business: Learnings and Insights
Potential of AI (Generative AI) in Business: Learnings and InsightsPotential of AI (Generative AI) in Business: Learnings and Insights
Potential of AI (Generative AI) in Business: Learnings and InsightsRavi Sanghani
 
The State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxThe State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxLoriGlavin3
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.Curtis Poe
 
A Framework for Development in the AI Age
A Framework for Development in the AI AgeA Framework for Development in the AI Age
A Framework for Development in the AI AgeCprime
 
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxPasskey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxLoriGlavin3
 
2024 April Patch Tuesday
2024 April Patch Tuesday2024 April Patch Tuesday
2024 April Patch TuesdayIvanti
 
Glenn Lazarus- Why Your Observability Strategy Needs Security Observability
Glenn Lazarus- Why Your Observability Strategy Needs Security ObservabilityGlenn Lazarus- Why Your Observability Strategy Needs Security Observability
Glenn Lazarus- Why Your Observability Strategy Needs Security Observabilityitnewsafrica
 
Long journey of Ruby standard library at RubyConf AU 2024
Long journey of Ruby standard library at RubyConf AU 2024Long journey of Ruby standard library at RubyConf AU 2024
Long journey of Ruby standard library at RubyConf AU 2024Hiroshi SHIBATA
 
Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...
Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...
Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...Alkin Tezuysal
 
Zeshan Sattar- Assessing the skill requirements and industry expectations for...
Zeshan Sattar- Assessing the skill requirements and industry expectations for...Zeshan Sattar- Assessing the skill requirements and industry expectations for...
Zeshan Sattar- Assessing the skill requirements and industry expectations for...itnewsafrica
 
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxDigital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxLoriGlavin3
 
Modern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
Modern Roaming for Notes and Nomad – Cheaper Faster Better StrongerModern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
Modern Roaming for Notes and Nomad – Cheaper Faster Better Strongerpanagenda
 
Generative AI - Gitex v1Generative AI - Gitex v1.pptx
Generative AI - Gitex v1Generative AI - Gitex v1.pptxGenerative AI - Gitex v1Generative AI - Gitex v1.pptx
Generative AI - Gitex v1Generative AI - Gitex v1.pptxfnnc6jmgwh
 
Testing tools and AI - ideas what to try with some tool examples
Testing tools and AI - ideas what to try with some tool examplesTesting tools and AI - ideas what to try with some tool examples
Testing tools and AI - ideas what to try with some tool examplesKari Kakkonen
 
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024BookNet Canada
 
Design pattern talk by Kaya Weers - 2024 (v2)
Design pattern talk by Kaya Weers - 2024 (v2)Design pattern talk by Kaya Weers - 2024 (v2)
Design pattern talk by Kaya Weers - 2024 (v2)Kaya Weers
 
Scale your database traffic with Read & Write split using MySQL Router
Scale your database traffic with Read & Write split using MySQL RouterScale your database traffic with Read & Write split using MySQL Router
Scale your database traffic with Read & Write split using MySQL RouterMydbops
 

Recently uploaded (20)

TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024
 
So einfach geht modernes Roaming fuer Notes und Nomad.pdf
So einfach geht modernes Roaming fuer Notes und Nomad.pdfSo einfach geht modernes Roaming fuer Notes und Nomad.pdf
So einfach geht modernes Roaming fuer Notes und Nomad.pdf
 
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
 
Potential of AI (Generative AI) in Business: Learnings and Insights
Potential of AI (Generative AI) in Business: Learnings and InsightsPotential of AI (Generative AI) in Business: Learnings and Insights
Potential of AI (Generative AI) in Business: Learnings and Insights
 
The State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxThe State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptx
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.
 
A Framework for Development in the AI Age
A Framework for Development in the AI AgeA Framework for Development in the AI Age
A Framework for Development in the AI Age
 
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxPasskey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
 
2024 April Patch Tuesday
2024 April Patch Tuesday2024 April Patch Tuesday
2024 April Patch Tuesday
 
Glenn Lazarus- Why Your Observability Strategy Needs Security Observability
Glenn Lazarus- Why Your Observability Strategy Needs Security ObservabilityGlenn Lazarus- Why Your Observability Strategy Needs Security Observability
Glenn Lazarus- Why Your Observability Strategy Needs Security Observability
 
Long journey of Ruby standard library at RubyConf AU 2024
Long journey of Ruby standard library at RubyConf AU 2024Long journey of Ruby standard library at RubyConf AU 2024
Long journey of Ruby standard library at RubyConf AU 2024
 
Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...
Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...
Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...
 
Zeshan Sattar- Assessing the skill requirements and industry expectations for...
Zeshan Sattar- Assessing the skill requirements and industry expectations for...Zeshan Sattar- Assessing the skill requirements and industry expectations for...
Zeshan Sattar- Assessing the skill requirements and industry expectations for...
 
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxDigital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
 
Modern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
Modern Roaming for Notes and Nomad – Cheaper Faster Better StrongerModern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
Modern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
 
Generative AI - Gitex v1Generative AI - Gitex v1.pptx
Generative AI - Gitex v1Generative AI - Gitex v1.pptxGenerative AI - Gitex v1Generative AI - Gitex v1.pptx
Generative AI - Gitex v1Generative AI - Gitex v1.pptx
 
Testing tools and AI - ideas what to try with some tool examples
Testing tools and AI - ideas what to try with some tool examplesTesting tools and AI - ideas what to try with some tool examples
Testing tools and AI - ideas what to try with some tool examples
 
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
 
Design pattern talk by Kaya Weers - 2024 (v2)
Design pattern talk by Kaya Weers - 2024 (v2)Design pattern talk by Kaya Weers - 2024 (v2)
Design pattern talk by Kaya Weers - 2024 (v2)
 
Scale your database traffic with Read & Write split using MySQL Router
Scale your database traffic with Read & Write split using MySQL RouterScale your database traffic with Read & Write split using MySQL Router
Scale your database traffic with Read & Write split using MySQL Router
 

Virtualizing Services and Resources with ProBus: The WS-Policy-Aware Service and Resource Bus

  • 1. Virtualizing Services and Resources with ProBus:  The WS‐Policy‐Aware Service and Resource Bus Ralph Mietzner, Tammo van Lessen, Alexander Wiese, Matthias Wieland, Dimka Karastoyanova, and Frank Leymann Institute of Architecture of Application Systems (IAAS) University of Stuttgart Universitätsstr. 38 70569 Stuttgart Germany tammo.van.lessen@iaas.uni‐stuttgart.de
  • 2. The Talk Today Motivation and Introduction Classification of WS‐Policy based Service  Selection The ProBus approach for Web Services The ProBus approach for WS‐Resources Architecture & Implementation Conclusions & Outlook © Ralph Mietzner, Tammo van Lessen, Alexander Wiese, Matthias Wieland, Dimka Karastoyanova, and Frank Leymann 2
  • 3. Service/Resource Selection Service  Registry find publish Service  Service  Requestor bind Provider WS‐Policy provides a promising approach to Web service/Resource  selection based on non‐functional properties. Established approaches are quite cumbersome and not as easy as they  could be. We have identified 3 classes of WS‐Policy based service selection. © Ralph Mietzner, Tammo van Lessen, Alexander Wiese, Matthias Wieland, Dimka Karastoyanova, and Frank Leymann 3
  • 4. Classes of WS‐Policy based Service Selection Class 1: Manual Service Selection Advantages: Easy to use, no “magic” involved. Disadvantages: inflexible, not really loosely coupled © Ralph Mietzner, Tammo van Lessen, Alexander Wiese, Matthias Wieland, Dimka Karastoyanova, and Frank Leymann 5
  • 5. Classes of WS‐Policy based Service Selection Class 2: Policy Based Service Selection Advantages: more flexible Disadvantes: Additional components are needed on  client‐side (for “find” and “select”) © Ralph Mietzner, Tammo van Lessen, Alexander Wiese, Matthias Wieland, Dimka Karastoyanova, and Frank Leymann 6
  • 6. Classes of WS‐Policy based Service Selection Class 3: The ProBus approach Advantages: easy to use, “make it happen” semantics,  more flexibility as the bus is aware of any conversations © Ralph Mietzner, Tammo van Lessen, Alexander Wiese, Matthias Wieland, Dimka Karastoyanova, and Frank Leymann 7
  • 7. Sample Request <soap:Envelope ...> <soap:Header> <rb:requiredPolicy> <wsp:Policy> <wsp:ExactlyOne> <wsp:All> <prn:printer prn:maxCostPerPage="$0.3"/> </wsp:All> </wsp:ExactlyOne> </wsp:Policy> </rb:requiredPolicy> </soap:Header> <soap:Body> <!-- Payload of the message --> </soap:Body> </soap:Envelope> © Ralph Mietzner, Tammo van Lessen, Alexander Wiese, Matthias Wieland, Dimka Karastoyanova, and Frank Leymann 8
  • 8. Post‐Processing Rules When only the bus takes care of policy matchmaking,  it must be aware of domain‐specific details E.g. “There is a match when costPerPage of a printer is  less or equal to a given amount” XPath‐based post‐processor <rb:XPathRules rb:assertionQName="prn:printer" ...> <rb:Rule> $reqAssertion/@prn:maxCostPerPage <= $provAssertion/@prn:maxCostPerPage </rb:Rule> <!-- additional rules for this assertion --> </rb:XPathRules> © Ralph Mietzner, Tammo van Lessen, Alexander Wiese, Matthias Wieland, Dimka Karastoyanova, and Frank Leymann 9
  • 9. Using ProBus for Dynamic Resource Selection Sample Scenario: Printer Selection © Ralph Mietzner, Tammo van Lessen, Alexander Wiese, Matthias Wieland, Dimka Karastoyanova, and Frank Leymann 10
  • 10. How to apply the ProBus approach to WSRF Defining Policies Relating to Resource Properties New WS‐Policy assertion type: resource property  condition Resource Property Document <prn:Printer> <prn:waitingQueue>10</prn:waitingQueue> <prn:costPerPage>0.03</prn:costPerPage> <!--other resource properties --> </prn:Printer> <wsp:Policy ...> Request Policy <wsp:ExactlyOne> <wsp:All> <!-- some assertions --> <rb:resourcePropertyCondition rb:type="prn:printer"> <rb:XPath rb:propertyQName="prn:waitingQueue"> number(prn:waitingQueue/text()) <10 </rb:XPath> </rb:resourcePropertyCondition> <!-- more assertions --> </wsp:All> </wsp:ExactlyOne> </wsp:Policy> © Ralph Mietzner, Tammo van Lessen, Alexander Wiese, Matthias Wieland, Dimka Karastoyanova, and Frank Leymann 11
  • 11. How to apply the ProBus approach to WSRF Conversations Resources are stateful, hence the EPR is important for  subsequent requests Dynamic Resource Management Annotations for factory operations Exception Handling “What happens, if a resource is not available (anymore)?” New fault type: noSuitableResourceFound © Ralph Mietzner, Tammo van Lessen, Alexander Wiese, Matthias Wieland, Dimka Karastoyanova, and Frank Leymann 12
  • 12. Architecture and Implementation Implementation based on Apache ServiceMix Policy‐aware message routing Pluggable processors for post‐processing rules Deployment support for policies, post‐processing rules and  resource factory descriptors © Ralph Mietzner, Tammo van Lessen, Alexander Wiese, Matthias Wieland, Dimka Karastoyanova, and Frank Leymann 13
  • 13. Conclusions and Outlook Conclusions One‐step service/resource selection completely decouples  service providers and service consumers XPath‐based post‐processing rules allow for fine‐granular  domain‐specific policy matchmaking WS‐Policy can be used in conjunction with WSRF and  helps to easily discover suited resources for a particular  request Future Work We plan to combine ProBus with a BPEL engine in order to  define dynamic policy‐based provisioning workflows on  standard based SOA infrastructures We investigate how ProBus can help to achieve better fail‐ over behaviors © Ralph Mietzner, Tammo van Lessen, Alexander Wiese, Matthias Wieland, Dimka Karastoyanova, and Frank Leymann 14
  • 14. Thank you for your attention! Any Questions? © Ralph Mietzner, Tammo van Lessen, Alexander Wiese, Matthias Wieland, Dimka Karastoyanova, and Frank Leymann 15