Progetto di Reti di Calcolatori L-S 11/07/2006 Delle Noci Davide Girolamo Matr.: 0000212479 Prof.:...

Post on 02-May-2015

215 views 0 download

Transcript of Progetto di Reti di Calcolatori L-S 11/07/2006 Delle Noci Davide Girolamo Matr.: 0000212479 Prof.:...

Progetto di Reti di Calcolatori L-S

11/07/2006

Delle Noci Davide Girolamo

Matr.: 0000212479

Prof.: Antonio Corradi

A.A. 2005/2006

Scopo del progetto

L’orchestrazione dei servizi web rientra nel settore noto come Business process management.

Definizione di un processo “master” che coordini i diversi servizi, intesi come web services.

• Definizione dei web services;

• Definizione di un workflow management;

• Definizione dei requisiti di qualità.

Definizione dei web services

Sono stati definiti 3 web services:

Prenotazione dei voli;

Prenotazione degli hotels;

Noleggio di veicoli.

SERVIZIO

DI

TOUR OPERATOR

WSDL??

Web services

Web services

Componenti software indipendenti dalla piattaforma e dall’implementazione:

descritti da un linguaggio di descrizione, chiamato WSDL;

Pubblicati in un registro di servizi, chiamato UDDI;

Invocati tramite la rete, mediante protocollo SOAP.

Realizzazione e deployment dei web services

Realizzazione dei web services mediante:

JBoss Application Server;

Apache Axis 1.1

Database Postgree 8.1

Linguaggio utilizzato:

JDK 1.5

Framework (IDE): ECLIPSE 3.2

Gli altri con .NET per l’interoperabilità

Modularità

Supporto al deployment

QoS dei singoli web services

Per la pubblicazione è stato creato un apposito registry locale;

Qualità di servizio gestita dapprima a livello dei singoli web services:

• Replicazione attiva-passiva a copie fredde

• Grado di replicazione = 3;

Realizzazione di un opportuno sistema di naming che permetta di identificare e cambiare server corrente, in caso di crash della copia primaria.

Continuità dei servizi

Processo “master”

Processo responsabile della coordinazione dei 3 web services, esponendo a sua volta un’interfaccia a Web Services e rispettando le preferenze espresse dall’utente.

In base alle preferenze:

•Invocazione del singolo web service;

•Invocazione di tutti i web services

BEPEL4WS

Definizione processo “master”

A livello di processo master, il corrispondente workflow è dato da:

• Ricezione della richiesta da parte del cliente

• Confronto tra la preferenza espressa e quelle possibili

•Avanzamento nel workflow

•Invio della risposta al cliente

Receive

Compare

Token

Reply

Invoke

Processo BPEL

Business process logic

La logica specifica del processo del servizio di tour operator può essere rappresentata graficamente:

Flight Reservation

Hotel Reservation

Vehicle Reservation

Price calculation

StartReceive

Invoke

Invoke

Invoke

Reply

QoS del processo BPEL

Oltre alla qualità di servizio prevista a livello di singoli web services, è necessario garantire una qualità di servizio maggiore a livello del processo “master” e verificarla tramite opportuni parametri.

Compensate Fault manager

Modellazione e gestione dei fault, con supporto per le transazioni, per poter effettuare un undo di quanto assegnato fino al momento in cui si verifica l’error.

Dalla teoria alla pratica…Se il web service è stato realizzato con il linguaggio JAVA…

Il Client è stato realizzato con il linguaggio .NET, così da mostrare anche l’interoperabilità messa a disposizione dalla tecnologia dei web services.

Dalla teoria alla pratica 2…

Dalla teoria alla pratica 3…

Conclusioni e possibili sviluppi futuri

L’applicazione presenta alcuni limiti:

non si è tenuto conto della gestione dei pagamenti;

non è gestita la parte sulla sicurezza;

semantica di interazione sincrona, a scapito dell’efficienza;

non è stato modellato un eventuale servizio on-line di assistenza al cliente;

… W LA CREATIVITA’!!!!