Download presentation
Presentation is loading. Please wait.
Published byAlyson Jennings Modified over 9 years ago
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
Orchestration, Diagnosis, and Recovery Recovery Selector Diagnoser WS-BPEL Management Interface Web Service 1 Web Service 2 Web Service N Symptoms Event Logs Fault Notification Event Logs Other Alarms Repair Actions SH-BPEL
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) recovery modules 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 SH-BPEL API B-API M-APIMessage Monitor Standard BPEL Engine PM-API Process Manager E-API Modafferi, Mussi, Pernici, 2006)
8
SH-BPEL: The Process Manager Management Engine Management Interface BPEL Interface Mediator Web Service Invoker Substitution Manager Web Service Retriever Mediation Service Process Manager PAWS
9
Case study: Warehouse Fault Send OrderReceive Order Split Order Check Availability On Warehouse Check Availability On Supplier Calculate Cost Supply Check Availability Calculation Service Split Service CUSTOMERSHOP WAREHOUSE 1. WH1 is declared faulty (permanent) 2. The Recovery Selector stops the SHOP 3. The Recovery Selector choose to substitute WH1 with WH2 4. Generated plan: Substitute WAREHOUSE redo check availability redo calculate cost on new WAREHOUSE then WF is continued to the end. WH1
10
Demo Structure WS-BPEL Management Interface WAREHOUSE 1 SH-BPEL WSDL 1 ≠ WSDL 2 SHOP Client SH-BPEL Administrator WSDM Subscription Invocation Notification Repair actions WAREHOUSE 2 Stop Resume
11
Web Service Substitution: Mediator Configuration Mediation Service Warehouse 1 WSDL URBE Registry Warehouse 1 WSDL Warehouse 2 WSDL WSDL Matcher Similarity Engine Matching Engine Warehouse 2 WSDL Warehouse 1 WSDL Mapping Document
12
Web Service Substitution: Mediator execution Mediation Service External Data Retriever Translation Engine Input message (Warehouse 1 WSDL) Input message (Warehouse 2 WSDL) Output message (Warehouse 1 WSDL) Output message (Warehouse 2 WSDL) Mapping Document
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 (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 URBE - Extended UDDI Registry By Example Bianchini, De Antonellis, Pernici, Plebani, Information Systems, 2006
16
URBE
17
Process Optimizer Input: abstract BPEL+ process constraints and service QoS annotations Optimal service selection (task-WS associations for execution paths) LP-solve (CPLEX) Adaptive service selection - optimization
18
Process Tuner - loop, branch probability - local, global constraints - quality weights - process state - verified conditions - loop numb. of it. CPLEX Ranking procedure MILP problem formulatio n MILP additional constraints Global plan +WS ranking BPEL Engine BPEL Specification Process Annotation MAIS Registry - candidate WS Process Traslator Negotiator Module Web Service Provider (Ardagna and Pernici, TSE, 2007) Service selection and process optimization
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
Handler Service 1Service 2 SOAP Message Operatio ns on Message s Managemen t interface Perturb 1... Perturb N Log Perturb 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
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.