La presentazione è in caricamento. Aspetta per favore

La presentazione è in caricamento. Aspetta per favore

Università di Pisa Facoltà di Ingegneria Corso di Laurea in Ingegneria Informatica Tesi di Laurea Progettazione e realizzazione di uninterfaccia Web per.

Presentazioni simili


Presentazione sul tema: "Università di Pisa Facoltà di Ingegneria Corso di Laurea in Ingegneria Informatica Tesi di Laurea Progettazione e realizzazione di uninterfaccia Web per."— Transcript della presentazione:

1 Università di Pisa Facoltà di Ingegneria Corso di Laurea in Ingegneria Informatica Tesi di Laurea Progettazione e realizzazione di uninterfaccia Web per un servizio di consistenza su architetture Grid Candidato Emanuele Fambrini Relatori Prof. Andrea Domenici, Prof. Cinzia Bernardeschi, Ing. Gianni Pucciani

2 Progetto e realizzazione di un'interfaccia Web per un servizio di consistenza su architetture Grid2 Interfaccia Web per un servizio di consistenza su Grid E stata sviluppata uninterfaccia Web per un servizio di consistenza dati su Grid Lobbiettivo è fornire agli utenti e amministratori del servizio uninterfaccia più amichevole rispetto a quella attualmente esistente, a linea di comando Linterfaccia è stata realizzata sfruttando le tecnologie: –Web Services –Java Server Pages Java Beans Expression Language –Globus Toolkit Requisiti di sicurezza Requisiti, architettura e struttura del progetto Messa in opera ed utilizzo

3 Progetto e realizzazione di un'interfaccia Web per un servizio di consistenza su architetture Grid3 Griglie Computazionali Il termine Grid (griglia) nasce da un paragone con la rete di distribuzione dellenergia elettrica. Una Grid è uninfrastruttura per condividere risorse computazionali e capacità di memorizzazione dei dati. Così come la rete elettrica distribuisce energia proveniente da diverse fonti, Grid fornisce risorse di calcolo e dati provenienti da diverse organizzazioni geograficamente sparse.

4 Progetto e realizzazione di un'interfaccia Web per un servizio di consistenza su architetture Grid4 Replica Consistency Service CONStanza/1 Sviluppato presso lINFN Garantisce la consistenza fra le repliche in un ambiente Grid Replicazione file e database Infrastruttura di comunicazione sviluppata utilizzando il toolkit gSOAP Accessibile come Web Service

5 Progetto e realizzazione di un'interfaccia Web per un servizio di consistenza su architetture Grid5 Replica Consistency Service CONStanza/2 Le componenti principali di CONStanza sono: Global Replica Consistency Service (GRCS) – componente prioritaria e principale interfaccia verso gli utenti finali Local Replica Consistency Service (LRCS) – registra, gestisce, aggiorna le repliche a livello locale Replica Consistency Catalogue (RCC) – memorizza tutte le informazioni su tutte le repliche, come lo stato in cui si trovano e la loro localizzazione

6 Progetto e realizzazione di un'interfaccia Web per un servizio di consistenza su architetture Grid6 Architettura

7 Progetto e realizzazione di un'interfaccia Web per un servizio di consistenza su architetture Grid7 Subpackage Client Applicazioni cliente per il GRCS –Permettono lesecuzione dei metodi remoti definiti nel file header WRCS.gh Applicazioni cliente per il LRCS –Permettono lesecuzione dei metodi remoti definiti nel file header WLRCS.gh Possono essere invocate attraverso una Command Line Interface

8 Progetto e realizzazione di un'interfaccia Web per un servizio di consistenza su architetture Grid8 Java Server Pages e Java Beans JSP: Evoluzione delle Servlets Si presentano come combinazione di testo e tag Caratteristiche: –Portabilità –Riutilizzo del codice –Facile separazione della parte logica dalla presentazione (look-and- feel) Java Beans: Costruttore vuoto Non deve avere variabili di stato public Per accedere alle variabili si utilizzano metodi di get pubblici (getNomeVariabile) Per settare le variabili si utilizzano metodi di set pubblici (setNomeVaribile)

9 Progetto e realizzazione di un'interfaccia Web per un servizio di consistenza su architetture Grid9 Web Services Un Web Service gestisce interazioni program-to-program via Web Alla base della comunicazione dei Web Service cè SOAP, un protocollo basato su XML

10 Progetto e realizzazione di un'interfaccia Web per un servizio di consistenza su architetture Grid10 Web Service Description Language Linguaggio utilizzato per specificare la descrizione di un servizio Web Approccio strutturato per definire le interfacce dei servizi Web Facilita limplementazione ed il mantenimento dei servizi Facilita lutilizzo dei servizi

11 Progetto e realizzazione di un'interfaccia Web per un servizio di consistenza su architetture Grid11 Toolkit gSOAP e WSDL2Java gSOAP: Facilita la realizzazione di Web Service in C/C++ e di applicazioni cliente partendo dalla descrizione WSDL del servizio Permette di generare automaticamente la descrizione WSDL partendo dai file header che definiscono le funzionalità del servizio Web WSDL2Java: Tool di Apache Axis Genera una serie di classi Java attraverso cui accedere al servizio descritto dal file WSDL Le corrispondenze tra tipi WSDL e Java seguono la specifica JAX-RPC

12 Progetto e realizzazione di un'interfaccia Web per un servizio di consistenza su architetture Grid12 Requisiti di progetto Lutente attraverso un browser web può invocare i metodi cliente relativi al GRCS o al LRCS di CONStanza Lutente attraverso uninterfaccia web sceglie la funzione da eseguire ed imposta i dovuti parametri di ingresso attraverso form di input Ogni metodo remoto sia relativo al GRCS che al LRCS ha uninterfaccia web formata da una serie di form Ogni metodo ha una pagina web che mostra i risultati

13 Progetto e realizzazione di un'interfaccia Web per un servizio di consistenza su architetture Grid13 Funzionalità I metodi remoti del RCS CONStanza vengono chiamati attraverso classi JavaBean cliente

14 Progetto e realizzazione di un'interfaccia Web per un servizio di consistenza su architetture Grid14 Struttura Si hanno due packages principali: –Grcs per le classi riguardanti il GRCS –Lrcs per le classi relative al LRCS Il package Grcs è composto da tanti sottopackages, uno per ogni funzione cliente del GRCS di CONStanza

15 Progetto e realizzazione di un'interfaccia Web per un servizio di consistenza su architetture Grid15 gSOAP utilizzo Il compilatore soapcpp2 elabora i file header che definiscono le funzionalità cliente di CONStanza: –soapcpp2 WRCS.gh –soapcpp2 WLRCS.gh Sono generate in automatico le descrizioni WSDL dei metodi remoti: –WRCS.wsdl –WLRCS.wsdl

16 Progetto e realizzazione di un'interfaccia Web per un servizio di consistenza su architetture Grid16 WSDL2Java utilizzo genera le seguenti classi: Uninterfaccia Java per accedere ai metodi remoti Una classe Stub Uninterfaccia del servizio Una implementazione del servizio (locator)

17 Progetto e realizzazione di un'interfaccia Web per un servizio di consistenza su architetture Grid17 Diagramma delle classi Per ogni metodo del GRCS e del LRCS si ha una struttura di classi formata da: Una classe JavaBean che permette di chiamare un metodo specifico Una classe GsiPort che gestisce gli aspetti della sicurezza nella comunicazione con il RCS Le classi generate con il tool WSDL2Java

18 Progetto e realizzazione di un'interfaccia Web per un servizio di consistenza su architetture Grid18 Sicurezza Grid Security Infrastructure (GSI) –Si usano le librerie messe a disposizione dal Commodity Grid (CoG) Kit fornito dal progetto Globus HTTPS con autenticazione sia del server che del cliente attraverso certificati Definizione di una propria libreria di Tag JSP per effettuare la convalida dei dati immessi nelle form di input

19 Progetto e realizzazione di un'interfaccia Web per un servizio di consistenza su architetture Grid19 Architettura Design Pattern MVC Modello: logica e dati dellapplicazione Vista: responsabile della visualizzazione delle informazioni allutente Controllore: responsabile di gestire linput prodotto dallutente Per ogni metodo remoto del GRCS o LRCS si hanno: Una pagina JSP svolge il ruolo di Controllore permettendo linserimento di parametri di input attraverso form Una pagina JSP svolge il ruolo di Vista, visualizzando il risultato della chiamata allutente Una classe JavaBean svolge il ruolo di Modello permettendo di chiamare un metodo del RCS

20 Progetto e realizzazione di un'interfaccia Web per un servizio di consistenza su architetture Grid20 Messa in opera Lapplicazione creata viene resa utilizzabile attraveso il Servlet e JSP container Apache Tomcat: Il cliente attraverso il browser contatta Tomcat Tomcat provvede ad eseguire le pagine JSP Le pagine JSP eseguono i metodi delle classi JavaBeans Le classi JavaBeans chiedono lesecuzione dei metodi remoti GRCS o LRCS su CONStanza

21 Progetto e realizzazione di un'interfaccia Web per un servizio di consistenza su architetture Grid21 Chiamata di un metodo di CONStanza attraverso Java Bean cliente

22 Progetto e realizzazione di un'interfaccia Web per un servizio di consistenza su architetture Grid22 GRCS User Interface

23 Progetto e realizzazione di un'interfaccia Web per un servizio di consistenza su architetture Grid23 Pagina JSP Controllore

24 Progetto e realizzazione di un'interfaccia Web per un servizio di consistenza su architetture Grid24 Pagina JSP di Vista

25 Progetto e realizzazione di un'interfaccia Web per un servizio di consistenza su architetture Grid25 Conclusioni Caratteristiche dellapplicazione: Interoperabilità Portabilità Separazione parte logica – parte grafica Accessibilità Facilità di uso Problemi incontrati: Cliente Java – Server C++ Corrispondenze tipi WSDL – Java Comunicazione del cliente Java con CGSI-gSOAP Soluzioni adottate: Uso di Tool JSP: JavaBeans, Expression Language


Scaricare ppt "Università di Pisa Facoltà di Ingegneria Corso di Laurea in Ingegneria Informatica Tesi di Laurea Progettazione e realizzazione di uninterfaccia Web per."

Presentazioni simili


Annunci Google