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

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

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

Page 1: Progetto di Reti di Calcolatori L-S 11/07/2006 Delle Noci Davide Girolamo Matr.: 0000212479 Prof.: Antonio Corradi A.A. 2005/2006.

Progetto di Reti di Calcolatori L-S

11/07/2006

Delle Noci Davide Girolamo

Matr.: 0000212479

Prof.: Antonio Corradi

A.A. 2005/2006

Page 2: 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à.

Page 3: Progetto di Reti di Calcolatori L-S 11/07/2006 Delle Noci Davide Girolamo Matr.: 0000212479 Prof.: Antonio Corradi A.A. 2005/2006.

Definizione dei web services

Sono stati definiti 3 web services:

Prenotazione dei voli;

Prenotazione degli hotels;

Noleggio di veicoli.

SERVIZIO

DI

TOUR OPERATOR

WSDL??

Page 4: Progetto di Reti di Calcolatori L-S 11/07/2006 Delle Noci Davide Girolamo Matr.: 0000212479 Prof.: Antonio Corradi A.A. 2005/2006.

Web services

Page 5: Progetto di Reti di Calcolatori L-S 11/07/2006 Delle Noci Davide Girolamo Matr.: 0000212479 Prof.: Antonio Corradi A.A. 2005/2006.

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.

Page 6: Progetto di Reti di Calcolatori L-S 11/07/2006 Delle Noci Davide Girolamo Matr.: 0000212479 Prof.: Antonio Corradi A.A. 2005/2006.

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

Page 7: Progetto di Reti di Calcolatori L-S 11/07/2006 Delle Noci Davide Girolamo Matr.: 0000212479 Prof.: Antonio Corradi A.A. 2005/2006.

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

Page 8: Progetto di Reti di Calcolatori L-S 11/07/2006 Delle Noci Davide Girolamo Matr.: 0000212479 Prof.: Antonio Corradi A.A. 2005/2006.

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

Page 9: Progetto di Reti di Calcolatori L-S 11/07/2006 Delle Noci Davide Girolamo Matr.: 0000212479 Prof.: Antonio Corradi A.A. 2005/2006.

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

Page 10: Progetto di Reti di Calcolatori L-S 11/07/2006 Delle Noci Davide Girolamo Matr.: 0000212479 Prof.: Antonio Corradi A.A. 2005/2006.

Processo BPEL

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

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

Page 12: Progetto di Reti di Calcolatori L-S 11/07/2006 Delle Noci Davide Girolamo Matr.: 0000212479 Prof.: Antonio Corradi A.A. 2005/2006.

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.

Page 13: Progetto di Reti di Calcolatori L-S 11/07/2006 Delle Noci Davide Girolamo Matr.: 0000212479 Prof.: Antonio Corradi A.A. 2005/2006.

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.

Page 14: Progetto di Reti di Calcolatori L-S 11/07/2006 Delle Noci Davide Girolamo Matr.: 0000212479 Prof.: Antonio Corradi A.A. 2005/2006.

Dalla teoria alla pratica 2…

Page 15: Progetto di Reti di Calcolatori L-S 11/07/2006 Delle Noci Davide Girolamo Matr.: 0000212479 Prof.: Antonio Corradi A.A. 2005/2006.

Dalla teoria alla pratica 3…

Page 16: Progetto di Reti di Calcolatori L-S 11/07/2006 Delle Noci Davide Girolamo Matr.: 0000212479 Prof.: Antonio Corradi A.A. 2005/2006.

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’!!!!