+ All Categories
Home > Documents > Fault Recovery in WS-Diamond using the SH-BPEL Engine.

Fault Recovery in WS-Diamond using the SH-BPEL Engine.

Date post: 31-Dec-2015
Category:
Upload: coral-melton
View: 215 times
Download: 0 times
Share this document with a friend
Popular Tags:
15
Fault Recovery in WS- Diamond using the SH- BPEL Engine
Transcript
Page 1: Fault Recovery in WS-Diamond using the SH-BPEL Engine.

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

Page 2: Fault Recovery in WS-Diamond using the SH-BPEL Engine.

Outline

• WS-Diamond and Orchestration

• Self-Healing BPEL (SH-BPEL)

• Recovery Scenarios

• Recovery Using SH-BPEL

• Future Work

Page 3: Fault Recovery in WS-Diamond using the SH-BPEL Engine.

Example of Interactions amongWS-BPEL Processes

Send Order Receive Order

Split Order

Check AvailabilityOn Warehouse

Check AvailabilityOn Supplier

Calculate Cost

Supply

Check Availability

Calculation

Split

CUSTOMER SHOP WAREHOUSE

Page 4: Fault Recovery in WS-Diamond using the SH-BPEL Engine.

Orchestration, Diagnosis, and Recovery

RecoverySelector

Diagnoser

WS-BPEL

Managem

entInterface

Web Service 1

Web Service 2

Web Service N

Symptoms

Event Logs

Fa

ult

No

tific

atio

n

Event Logs

Other Alarms

Repair

Acti

ons

SH-BPEL

Page 5: Fault Recovery in WS-Diamond using the SH-BPEL Engine.

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…

Enrico Mussi
Illustrazione dei possibili metodi per effettuare recovery action mediante BPELNoi siamo concentrati sul secondo e sul terzo punto.L'attenzione maggiore è comunque sulle azioni di recovery "estese"
Page 6: Fault Recovery in WS-Diamond using the SH-BPEL Engine.

SH-BPEL Engine

• The purpose is the creation of a Self-Healing extension of BPEL engines (SH-BPEL)

• SH-BPEL allows standard, pre-processing, and extended recovery actions

• 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

Enrico Mussi
Descrizione breve degli obiettivi di SH-BPEL e breve accenno alla logica con cui è stato pensato
Page 7: Fault Recovery in WS-Diamond using the SH-BPEL Engine.

SH-BPEL: The Architecture

SH

-BP

EL

AP

I B-A

PI

M-A

PI

Mes

sage

Mon

itor

Mes

sage

Mon

itor

StandardBPEL Engine

PM-API

Process Manager

E-API

Enrico Mussi
Descrizione passo passo dei moduli e delle interfacce
Page 8: Fault Recovery in WS-Diamond using the SH-BPEL Engine.

SH-BPEL: The Process Manager

ManagementEngine

Man

agem

ent

Inte

rfac

eBPEL Interface Mediator

Web ServiceInvoker

SubstitutionManager

Web ServiceRetriever

MediationService

Process Manager

Enrico Mussi
Descriione passo passo dei moduli e delle interfacce
Page 9: Fault Recovery in WS-Diamond using the SH-BPEL Engine.

Case 1: Customer Fault

Send Order Receive Order

Split Order

Check AvailabilityOn Warehouse

Check AvailabilityOn Supplier

Calculate Cost

Supply

Check Availability

Calculation

Split

CUSTOMER SHOP WAREHOUSE

1. The CUSTOMER is declared faulty

2. The Recovery Selector stops the SHOP

3. The CUSTOMER is repaired

4. The Recovery Selector sets the order variable of SHOP inserting the correct value

5. The Recovery Selector resumes the SHOP process from the receive order activity

Page 10: Fault Recovery in WS-Diamond using the SH-BPEL Engine.

Case 2: Shop Fault

Send Order Receive Order

Split Order

Check AvailabilityOn Warehouse

Check AvailabilityOn Supplier

Calculate Cost

Supply

Check Availability

Calculation

Split

CUSTOMER SHOP WAREHOUSE

• The SHOP is declared faulty

• The Recovery Selector stops the SHOP and the WAREHOUSE

• The split activity is repaired

• The Recovery Selector retries the split activity

• The Recovery Selector retries all the activities up to the calculate cost activity and then resumes the process

Page 11: Fault Recovery in WS-Diamond using the SH-BPEL Engine.

Case 3: Warehouse Fault

Send Order Receive Order

Split Order

Check AvailabilityOn Warehouse

Check AvailabilityOn Supplier

Calculate Cost

Supply

Check Availability

CalculationService

SplitService

CUSTOMER SHOP WAREHOUSE

1. The WAREHOUSE is declared faulty

2. The Recovery Selector stops the SHOP and the WAREHOUSE

3. The Recovery Selector substitutes the WAREHOUSE

4. The Recovery Selector redoes the check availability activity

5. The Recovery Selector redoes all the activities up to the calculate cost activity and then resumes the process

Page 12: Fault Recovery in WS-Diamond using the SH-BPEL Engine.

Demo Structure (Case 1 and Case 3)

WS-BPELM

anagement

InterfaceWAREHOUSE 1

SH-BPEL

WSDL1 ≠ WSDL2

SHOPClient

SH-BPELAdministrator

WSDM

Subscription

Invocation

Notification

Repair

WAREHOUSE 2Stop

Resume

Page 13: Fault Recovery in WS-Diamond using the SH-BPEL Engine.

Web Service Substitution: Mediator Configuration

MediationService

Warehouse 1WSDL

URBERegistry

Warehouse 1 WSDL

Warehouse 2 WSDL

WSDL Matcher

Similarity EngineMatching Engine

Warehouse 2WSDL

Warehouse 1WSDL

MappingDocument

Page 14: Fault Recovery in WS-Diamond using the SH-BPEL Engine.

Web Service Substitution:Mediator execution

Mediation Service

External DataRetriever

Translation Engine

Input message(Warehouse 1 WSDL)

Input message(Warehouse 2 WSDL)

Output message(Warehouse 1 WSDL)

Output message(Warehouse 2 WSDL)

Page 15: Fault Recovery in WS-Diamond using the SH-BPEL Engine.

Future Work

• Introduce Semantics to• Enhance recovery actions

• Enhance service mediation

• Define patterns and strategies to recover from common faulty situations


Recommended