1 / 24

Fault Recovery in WS-Diamond using the SH-BPEL Engine and PAWS

Fault Recovery in WS-Diamond using the SH-BPEL Engine and PAWS. Barbara Pernici Politecnico di Milano May 11, 2007. Outline. WS-Diamond and Orchestration Self-Healing BPEL (SH-BPEL) Recovery Scenarios Recovery Using SH-BPEL PAWS: Processes with Adaptive Web Services Future Work.

leone
Download Presentation

Fault Recovery in WS-Diamond using the SH-BPEL Engine and PAWS

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Fault Recovery in WS-Diamond using the SH-BPEL Engine and PAWS Barbara Pernici Politecnico di Milano May 11, 2007

  2. Outline • WS-Diamond and Orchestration • Self-Healing BPEL (SH-BPEL) • Recovery Scenarios • Recovery Using SH-BPEL • PAWS: Processes with Adaptive Web Services • Future Work

  3. POLIMI WS-DIAMOND TOOLS • SH-BPEL • Process management with recovery actions • WSDM interface for notification and to get management operations lists • ActiveBPEL enhanced with recovery operations (flow based + variable modification) • Process simulator • Data fault injection functionality (service and message level)

  4. Diagnoser WS-BPEL Management Interface Recovery Selector Orchestration, Diagnosis, and Recovery Event Logs Web Service 1 Symptoms Web Service 2 Fault Notification Repair Actions Web Service N SH-BPEL Other Alarms Event Logs

  5. Process-Level Recovery Actions Using SH-BPEL • Standard recovery mechanisms • Provided by the language • Specified by the designer • Fault handler, compensation handler, event handler • Pre-Processing recovery mechanisms • Based on existing WS-BPEL constructs • Inserted by designers using tags • Process variable modification, single task or scope retrying, alternative paths specification, return back to defined safe points • Extended recovery mechanisms • Realized by external (with respect to the WS-BPEL engine) recoverymodules • Recovery modules interact with both the WS-BPEL engine and invoked Web services • Substitution, Redo, Retry, ecc…

  6. SH-BPEL Engine • Self-Healing extension of BPEL engines (SH-BPEL) developed at Politecnico di Milano • BPEL Engine: ActiveBPEL • It is realized without modifying existing BPEL engine code • It is composed of a set of interfaces and modules that enable • The communication of SH-BPEL with the Diagnoser and the Repair Action Selector • The communication between extended recovery modules and the traditional BPEL engine

  7. SH-BPEL: The Architecture Standard BPEL Engine B-API PM-API E-API Message Monitor SH-BPEL API Message Monitor Process Manager M-API Modafferi, Mussi, Pernici, 2006)

  8. SH-BPEL: The Process Manager BPEL Interface Mediator Management Engine Web Service Invoker Substitution Manager PAWS Management Interface Web Service Retriever Mediation Service Process Manager

  9. Case study: Warehouse Fault CUSTOMER SHOP WAREHOUSE • WH1 is declared faulty (permanent) • The Recovery Selector stops the SHOP • The Recovery Selector choose to substitute WH1 with WH2 • Generated plan: • Substitute WAREHOUSE • redo check availability redo calculate cost on new WAREHOUSE • then WF is continued to the end. Send Order Receive Order WH1 Split Service Split Order Check Availability On Supplier Check Availability On Warehouse Check Availability Calculation Service Calculate Cost Supply

  10. WS-BPEL Management Interface Demo Structure SHOP Client WSDM Invocation Subscription SH-BPEL Administrator Notification WAREHOUSE 1 WAREHOUSE 2 Stop Repair actions WSDL1≠ WSDL2 Resume SH-BPEL

  11. WSDL Matcher Matching Engine Similarity Engine Web Service Substitution: Mediator Configuration Warehouse 1 WSDL URBE Registry Warehouse 1 WSDL Mediation Service Warehouse 2 WSDL Warehouse 1 WSDL Mapping Document Warehouse 2 WSDL

  12. Web Service Substitution:Mediator execution Mapping Document Input message (Warehouse 1 WSDL) Input message (Warehouse 2 WSDL) Mediation Service Translation Engine Output message (Warehouse 1 WSDL) Output message (Warehouse 2 WSDL) External Data Retriever

  13. PAWS: Processes with adaptive Web Services Framework • Framework and tool set developed at Politecnico di Milano, Information Systems group • standalone tools for flexible services • URBE registry • Mediation configurator and engine • BPEL process optimization (QoS based selection) and reoptimization • QoS Negotiation

  14. Implementation (unless otherwise specified) • Java 1.5 • Axis, Tomcat • Wordnet • ActiveBPEL • WSDM Apache Muse • jUDDI • Offered with WS and Java interfaces

  15. URBE - Extended UDDI Registry By Example • URBE (Advanced UDDI registry) • Similarity evaluation (structural, term based) • WSDL, wordnet, similarity functions • Concrete and flexible services • add ons: • semantic plug-in (WSDL-S) • QoS selection Bianchini, De Antonellis, Pernici, Plebani, Information Systems, 2006

  16. URBE

  17. Adaptive service selection - optimization • Process Optimizer • Input: abstract BPEL+ process constraints and service QoS annotations • Optimal service selection (task-WS associations for execution paths) • LP-solve (CPLEX)

  18. BPEL Specification Process Annotation - loop, branch probability - local, global constraints - quality weights Process Traslator Process Tuner - candidate WS - process state - verified conditions - loop numb. of it. MAIS Registry CPLEX MILP problem formulation MILP additional constraints BPEL Engine Negotiator Module Ranking procedure Web Service Provider Global plan +WS ranking Service selection and process optimization (Ardagna and Pernici, TSE, 2007)

  19. Adaptive service selection - negotiation

  20. Technological Overview • JBOSS (Servlet Container, WS deployment) • OraBPEL (Oracle WS-BPEL Process Engine) • MySQL (storing the service categorization)

  21. Data disturber • Tool to inject faults on service data and messages for BPEL processes • Treated failures • value mismatch • Typos (Jhon instead of John) • Different format (date) • Conflict in data values (London / Italy) • Delay in update operations • missing data • Generates a detailed log of exchanged messages

  22. Service 1 Service 2 SOAP Message Perturb Handler Operations on Messages Perturb 1 ... Perturb N Log Management interface Handler

  23. Future Work • Working on compensate activity (and theory for applicability of compensation) • Introduce Semantics to • Enhance recovery actions • Enhance service mediation • Define patterns and strategies to recover from common faulty situations

  24. For further info: http://www.elet.polimi.it/people/pernici

More Related