Università degli studi di Bologna
Progetto di Reti di Calcolatori L-S
A.A. 2005-2006
Business Process Management
Orchestrazione di Web Service basata
su standard BPEL per la realizzazione
di un servizio di tour operator
Chiar.mo Prof. Ing. Antonio Corradi
Relatore: Luca Cutillo
Obiettivo
Bpel Grafic tool designer
Esigenze complesse
=
Servizi complessi
Realizzare servizi complessi
Orchestrando
Servizi già esistenti!!
Bpel process
definition
BPEL4WS: lo stato dell’arte dell’evoluzione SOA
Travel Agency: struttura logica
I Web Service di gestione alberghiera
WSDL
 Tre Web Service ognuno dei quali è in grado, tramite l’interfaccia che espone, di
gestire i servizi per la catena alberghiera cui è associato (Hilton, Sheraton, Baglioni).
L’insieme di alberghi gestiti è differente per ogni catena.
Travel Agency: controllo della vitalità
È la richiesta
proveniente dal client
È la descrizione della disponibilità
delle entità del sistema
Travel Agency: il processo di ricerca di hotel
Ricerca parallela sui ws delle
tre catene alberghiere
Travel Agency: il processo di prenotazione (controllo disponibiltà)
Tutte le operazioni effettuate sul
WS disponibile più prioritario
Travel Agency: il processo di prenotazione (prenotazione)
Travel Agency: il processo di prenotazione (pagamento)
QoS: carenze strutturali
 Interoperabilità con applicazioni
privi di interfaccia WS
Persistenza
Accessibilità risorse locali dei
processi partner
Sicurezza
Accesso a dati non xml-based
Affidabilità
Transazionalità
QoS: replicazione (1)
Modello di Replicazione a copie calde
Aggiornamento ad ogni scrittura
Gestione a livello applicativo (Bpel)
Parallel execution
Receive Request
Invoke <sync>: Prenotazione
camera on Hilton Web Service
Invoke <async>: Prenotazione
camera on Hilton Web Service
Slave 1
Invoke <async>: Prenotazione
camera on Hilton Web Service
Slave 2
Reply Response
QoS: replicazione (2)
Modello di Replicazione a copie
calde
Receive Request
Aggiornamento
Aggiornamento ad ogni scrittura
Gestione a livello applicativo (Bpel)
Parallel execution
Invoke <sync>: Richiesta Web
Service Slave attivi
For Each WS
Slave
Invoke <async>: “Set
Prenotazione” on Web
Service Slave
Un nuovo processo bpel
per la gestione dei
Web Service replicati.
Invoke <async>: “Do
pagamento” on Web
Service Slave
Reply Response
Sequence
QoS: bilanciamento del carico
Load balancer tramite connettore Apache-Tomcat mod_jk
Client
Tra lo strato del server HTTP ed i
vari container web si può mettere
un firewall atto a proteggere lo
strato applicativo di business logic
Apache o
altro server
HTTP
Architettura
Connettor
e mod_jk
Una tipica architettura load
balanced: il server HTTP
maschera la presenza dei
web container replicati.
Cluster di
applicazioni web
Rete
Più istanze di Tomcat su cui pubblicare ed attivare i servizi di orchestrazione
Conclusioni e Sviluppi futuri
 E’ stato sviluppato un servizio tramite l’orchestrazione di applicazioni J2EE
e .NET supportate da interfacce Web Service.
L’implementazione di un processo eseguibile ha reso evidente come BPEL
abbia senso per definire protocolli di interazione a livello business.
L’implementazione di processi eseguibili si scontra con elevate carenze
strutturali atte a rendere nulla l’applicabilità.
Ogni evoluzione del sistema sviluppato potrà essere solo conseguente ad un
evoluzione del middleware stesso.
Scarica

presentazione - LIA - Università degli Studi di Bologna