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




            R...
The Talk Today

              Motivation and Introduction
              Classification of WS‐Policy based Service 
       ...
Service/Resource Selection

                                                                             Service 
        ...
Classes of WS‐Policy based Service Selection

              Class 1: Manual Service Selection




                        ...
Classes of WS‐Policy based Service Selection

              Class 2: Policy Based Service Selection




                  ...
Classes of WS‐Policy based Service Selection

              Class 3: The ProBus approach




                          Adv...
Sample Request


               <soap:Envelope ...>
                 <soap:Header>
                   <rb:requiredPolicy>
...
Post‐Processing Rules

              When only the bus takes care of policy matchmaking, 
              it must be aware o...
Using ProBus for Dynamic Resource Selection

              Sample Scenario: Printer Selection




© Ralph Mietzner, Tammo ...
How to apply the ProBus approach to WSRF

              Defining Policies Relating to Resource Properties
                ...
How to apply the ProBus approach to WSRF

              Conversations
                          Resources are stateful, he...
Architecture and Implementation




              Implementation based on Apache ServiceMix
                          Poli...
Conclusions and Outlook
              Conclusions
                          One‐step service/resource selection completely...
Thank you for your attention!

                                                         Any Questions?



© Ralph Mietzner...
End of Document
Upcoming SlideShare
Loading in …5
×

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

952 views
887 views

Published on

Presentation given at the International Conference on Web Services (ICWS) 2009 in Los Angeles, CA

Published in: Technology, Education, Business
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
952
On SlideShare
0
From Embeds
0
Number of Embeds
30
Actions
Shares
0
Downloads
0
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

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

  1. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. 14. Thank you for your attention! Any Questions? © Ralph Mietzner, Tammo van Lessen, Alexander Wiese, Matthias Wieland, Dimka Karastoyanova, and Frank Leymann 15
  15. 15. End of Document

×