Business Process Management Orchestrazione di Web Service basata su standard BPEL per la realizzazione di un servizio di tour operator Università degli studi di Bologna Progetto di Reti di Calcolatori L-S A.A Chiar.mo Prof. Ing. Antonio CorradiRelatore: Luca Cutillo
Obiettivo Esigenze complesse = Servizi complessi Realizzare servizi complessi Orchestrando Servizi già esistenti!! Bpel Grafic tool designer Bpel process definition
BPEL4WS: lo stato dell’arte dell’evoluzione SOA
Travel Agency: struttura logica
I Web Service di gestione alberghiera 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. WSDL
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 Accessibilità risorse locali dei processi partner Accesso a dati non xml-based Persistenza Affidabilità Sicurezza Transazionalità
QoS: replicazione (1) Modello di Replicazione a copie calde Aggiornamento ad ogni scrittura Gestione a livello applicativo (Bpel) Invoke : Prenotazione camera on Hilton Web Service Invoke : Prenotazione camera on Hilton Web Service Slave 1 Invoke : Prenotazione camera on Hilton Web Service Slave 2 Receive Request Reply Response Parallel execution
QoS: replicazione (2) Modello di Replicazione a copie calde Aggiornamento ad ogni scrittura Gestione a livello applicativo (Bpel) Invoke : Richiesta Web Service Slave attivi Receive Request Aggiornamento Parallel execution For Each WS Slave Invoke : “Do pagamento” on Web Service Slave Reply Response Invoke : “Set Prenotazione” on Web Service Slave Sequence Un nuovo processo bpel per la gestione dei Web Service replicati.
QoS: bilanciamento del carico Load balancer tramite connettore Apache-Tomcat mod_jk 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.