1 / 13

Reti di Calcolatori LS Prof. Antonio Corradi

FotoContest. Il primo servizio interamente dedicato ai Concorsi Fotografici basato su Corba. Reti di Calcolatori LS Prof. Antonio Corradi. Progetto : Giombi Giorgio e Soffritti Luca Presentazione : Giombi Giorgio. 1. Introduzione.

aldon
Download Presentation

Reti di Calcolatori LS Prof. Antonio Corradi

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. FotoContest Il primo servizio interamente dedicato ai Concorsi Fotografici basato su Corba Reti di Calcolatori LS Prof. Antonio Corradi Progetto: Giombi Giorgio e Soffritti Luca Presentazione: Giombi Giorgio 1

  2. Introduzione L’obiettivo di questo progetto è stato quello di realizzare un’applicazione per la creazione e gestione di Concorsi Fotografici a tema con scadenza periodica, sfruttando gli strumenti forniti dallo standard CORBA e ponendo particolare attenzione alla gestione delle risorse ,all’efficienza complessiva del sistema e soprattutto alla tolleranza ai guasti. Modello di ComunicazioneClient/Server sistema asimmetrico e indiretto comunicazionesincrona bloccante Client Server 2

  3. Architettura Generale(1) L’utente (Client) accede a tutti i servizi offerti comunicando in maniera trasparente con tre differenti Server. ServerAuth: Gestione Autenticazione ServerFoto: Gestione Concorso (Concorso in atto) ServerArchivio: Gestione Archivio (Concorsi terminati) ServerRepl: Server di controllo Gestione della QoS 3

  4. Architettura Generale (2) C O R B A Il middleware CORBA: come strumento di supporto completo alla comunicazione in remoto Facilita quindi la realizzazione di sistemi distribuiti, permettendo allo sviluppatore di trascurare l’aspetto tecnologico concentrandosi solo sul servizio da fornire. C O R B A 4

  5. Perché Corba? • Eterogeneità di Linguaggio: • tramite IDL è possibile definire le interfacce (descrizione dei servizi offerti) di ogni oggetto remoto rimanendo totalmente indipendenti dal linguaggio di programmazione e dalla macchina di esecuzione • Indipendenza Client/Server: • l’ , cuore del sistema, gestisce tutta la comunicazione permettendo ad un Client di legarsi ad un servizio, non ad un servitore! • Maggiori Servizi offerti: • un name service più evoluto e strutturato IDL ORB NAME SERVICE 5

  6. ServerFoto ServerAuth Client ServerArchivio Il Client Login (Registrati) Login Logout Vota Foto Vai all’ Utente… Salva Foto Vai alla Pagina… Vai al Concorso Vedi Foto Vai alla Mia Pagina Inserisci Foto Vai all’ Archivio Cancella Foto Vedi Foto Seleziona Concorso 6

  7. cacheConcorso cacheArchivio • NBSono state previste lato client due directory per salvare e mantenere le foto in modo da non richiamare inutilmente ogni volta il metodo remoto getFoto() • cacheConcorso • cacheArchivio Il Client – metodi remoti invocati Il Client – come Servitore notificaContest() • Anche il Client rende disponibile all’esterno uno specifico metodo remoto • Appositamente definito per permettere al ServerAuth di notificarlo immediatamente quando un concorso termina 7

  8. iscritti.txt D A N O T I F I C A O F F L I N E O N L I N E Il ServerAuth • Gestione Autenticazione: • Garantisce l’accesso al Servizio solo ai Client che si sono precedentemente registrati • Gestione Notifica di Fine Concorso: • Permette di notificare a tutti gli iscritti l’avvenuta fine di un concorso • Mantiene tre distinti vettori per gestire correttamente tale notifica username password Giorgio #x+ù@k2## … … … … … … notificaContest() 8

  9. fotoConcorso iconeConcorso Il ServerFoto • Gestione Concorso: • Mantiene tutte le foto del concorso in atto in formato jpg • Mantiene le informazioni relative a tale concorso (titolo, scadenza) e alle foto inviate(titolo, autore, numero voti, utenti che hanno votato) in un file XML, foto.xml • Crea e salva inoltre le relative miniature di ogni immagine partecipante Trasferimento dei File Immagine foto.xml • Rappresenta l’operazione principale del ServerFoto, richiesta quando un Client: • vuole aggiungere una foto • vuole visualizzare una pagina • vuole vedere una specifica foto • Rappresentando peròil collo di bottiglia del sistema si è pensato di introdurre: • le miniature per caricare velocemente una intera pagina • un Limite in KB su ogni foto inviata • un Limite Max di 9 foto per concorso struct fileFoto { sequence <octet ,500000 > file; long numeroByte; string nomeFoto; string utente; short voti; }; fileFoto 9

  10. titolo1 titolo2 titolo3 titolo… titolo1 foto.xml titolo… titolo3 titolo2 Il ServerArchivio • Gestione Archivio: • Progettato per mantenere tutte le “vecchie” foto e i file foto.xml, in modo che l’utente possa sempre rivedere i tre vincitori e le proprie immagini di ogni Concorso Terminato • Realizzato per non sovraccaricare di troppe richieste il ServerFoto, suddividendo così le responsabilità e i rispettivi carichi di lavoro concorsi.txt 10

  11. iscritti.txt foto.xml foto.xml Titolo Concorso 1) titoloFoto, autore, voti 2) titoloFoto, autore, voti 3) titoloFoto, autore, voti ServerArchivio ServerAuth O N L I N E concorsi.txt titolo… titolo… titolo… Gestione Termine Concorso Termine Concorso Client onLine ServerFoto fotoConcorso iconeConcorso notifica() ultimoConcorso() notificaContest() ThreadUltimoConcorso ThreadAuthNotifica D A N O T I F I C A O F F L I N E titolo… Client daNotifica Client offLine 11

  12. Conclusioni & Sviluppi futuri Conclusioni: • Il progetto è stato testato più volte sia in localmente che su più macchine con esiti positivi e tempi di risposta accettabili • La scelta progettuale di avere tre differenti server con tre specifici compiti (gestione Autenticazione – gestione Concorso – gestione Archivio) comporta sicuramente un maggiore costo in fatto di risorse ma tale scelta viene ripagata da una maggiore efficienza complessiva del sistema Sviluppi Futuri: • ServerFoto replicato in grado di gestire più richieste parallelamente, per prevenire situazioni di forte congestione • Più concorsi attivi contemporaneamente • Possibilità di commentare le foto • Concorsi a pagamento con premi in denaro ai vincitori 12

  13. Fine 13

More Related