Java Distributed Event Service Bringing events to J2EE platform Università degli studi di Bologna Corso di Laurea Specialistica in Ingegneria Informatica.

Slides:



Advertisements
Presentazioni simili
UNIVERSITÀ DEGLI STUDI DI MODENA E REGGIO EMILIA
Advertisements

© 2007 SEI-Società Editrice Internazionale, Apogeo Unità D1 Architetture di rete.
© 2007 SEI-Società Editrice Internazionale, Apogeo Unità D1 Architetture di rete.
Web Services.
Java Enterprise Edition (JEE)
P. Sanna 1 I web services TICO Corso di laurea in Informatica Università di Pisa a.a Pierluigi Sanna.
una interfaccia internet per il sistema Momis
UNIVERSITÀ DEGLI STUDI DI MODENA E REGGIO EMILIA
APPLICAZIONI E BASI DATI DISTRIBUITE
Progetto realizzato da: Francesco Seccia Matr Marco Spinelli Matr
Integrazione di una piattaforma IPTV in un’architettura SOA
Carotenuto Raffaele Distante Federico Picaro Luigi
Architettura Java/J2EE
Modello di replicazione attivo e di supporto alla tolleranza ai guasti in ambito MOM Autore: Claudio Fusconi Matricola: Esame: Reti di calcolatori.
Aprile 2004Reti di Calcolatori LS – Servizio di Annunci Distribuito1 Reti di Calcolatori LS REALIZZAZIONE DI UN SERVIZIO DI ANNUNCI DISTRIBUITO Studente:
Supporto per servizi di File Hosting Presentazione di progetto per lesame di Reti di Calcolatori LS Valerio Guagliumi
Delay Tolerant Networking Service per SAMOA. Il framework SAMOA SAMOA è un framework che consente di gestire e popolare la rete sociale e propagare a.
Qualità di servizio in ambiente wireless Progetto per il corso di Reti di Calcolatori L-S Prof. Antonio CorradiValentina Maraldi.
A Reliable Message Oriented Middleware based on Publish and Subscribe paradigm Mirko Matoffi a.a. 2003/2004.
Supporto in RMI per la collaborazione in rete Autore:Vincenzo Coco Matricola: Corso di Reti di Calcolatori LS 2006/2007 Docente: Antonio Corradi.
M.A.E.A.I. Mobile Agent and Enterprise Architecture Integration Il gestore delle politiche Valerio Siri Reti di Calcolatori LS Docente: Antonio Corradi.
DEIS Università di Bologna
High-Available Service Manager Diego Costantini Università degli studi di Bologna Corso di Laurea Specialistica.
Progetto di Reti di Calcolatori LS a cura di Gesualdi Marco Miniello Giuseppe Vukovic Veljko.
Distributed File System Service Dario Agostinone.
Meteo Service Corso di Reti di Calcolatori LS Casarini Stefano matr
PROGETTAZIONE E REALIZZAZIONE DI UN MIDDLEWARE CLIENT-SERVER
Grid monitoring: sviluppi futuri
Progetto di Reti di Calcolatori L-S Orchestrazione di servizi WEB
1 Reti di Calcolatori LS Prof. Antonio Corradi Progetto: Giombi Giorgio e Soffritti Luca Presentazione: Giombi Giorgio FotoContest Il primo servizio interamente.
U N INFRASTRUTTURA DI SUPPORTO PER SERVIZI DI FILE HOSTING Matteo Corvaro Matricola Corso di Reti di Calcolatori LS – Prof. A. Corradi A.A.
BROKER SERVER Progetto di Ingegneria del Web 2008 Alessio Bianchi Andrea Gambitta Giuseppe Siracusano.
Il modello di riferimento OSI
Servizi Grid ed agenti mobili : un ambiente di sviluppo e delivering
IMPLEMENTAZIONE TECNOLOGIE:HIBERNATE & JAVA RMI.
Ingegneria del software Modulo 3 -Tecniche dimplementazione Unità didattica 2 -EJB Ernesto Damiani Università degli Studi di Milano Lezione 4 – Le transazioni.
Reti di calcolatori LS Manni Tiziano  IT e nuovi scenari applicativi …  … portabilità dei dati …  … condivisione dati …  … disponibilità.
Universita’ degli Studi Roma Tre
N4N Platform Architecture PA Inside outlook.
Progetto RE.VE.N.GE. CORBA REliable and Versatile News delivery support for aGEncies Realizzazione del Sistema di Consegna UNIVERSITA’ DEGLI STUDI DI BOLOGNA.
Nemesi Creazione e pubblicazione di una rivista online tramite l’utilizzo di Java Message Service.
Reti di calcolatori LS Enrico Pirazzini SSB un middleware basato su JMS per l'invocazione di servizi remoti.
Producer – Consumer System Di Carlo Matteo CdLS Ingegneria Informatica (0234) Reti di Calcolatori LS A.A. 2004/2005.
MCSA Mobile Code System Architecture Infrastruttura a supporto della code mobility Pierfrancesco Felicioni Reti di Calcolatori L.S. 2005/2006.
Mobile Agent and Enterprise Architecture Integration Il gestore della mobilità degli agenti Raffaelli Massimo matricola
Realizzazione di moduli applicativi per messaggistica e gestione preferenze nel «carpooling» Università degli Studi del Sannio Dipartimento di Ingegneria.
Università degli Studi di Roma “Tor Vergata”
Studio di una soluzione distribuita per la gestione di un centro sondaggi.
Supporto per la replicazione attiva di servizi Progetto per il corso di Reti di Calcolatori LS Montanari Mirko Matr:
Sistema di replicazione master-multislave con server di backup per un servizio di chat di Marco Andolfo matr
PROTOTIPO DI UN GIOCO DI STRATEGIA IN RETE Alberto Buccella Università degli studi di Bologna Facoltà di Ingegneria Corso di Ingegneria Informatica.
Service Composition Analysis Progetto Reti di Calcolatori-LS prof. A.Corradi tutor S.Monti Piattaforma di gestione ed analisi statistica di workflow in.
Progetto di un sistema di comunicazione di gruppo con multicast causale Reti di Calcolatori L-S Marco Canaparo Matricola
Progetto e Realizzazione di un servizio di Chat Progetto di: Nicoli Leonardo Corso di: Reti di Calcolatori L-S.
Middleware per la sincronizzazione di ambienti eterogenei Progetto di Reti di Calcolatori LS Emanuele Crescentini matr Ingegneria Informatica LS.
Corso di Reti di Calcolatori LS Progetto di un server FTP in grado di coordinarsi con altri mirror per garantire QoS di Marco Buccione.
Muse2: MUSic Everywhere with WI-FI Progetto realizzato da: Bambini Stefano Bergamini Andrea Pierangeli Diego Bologna C.d.L.S. Ingegneria Informatica.
Progetto RE.VE.N.GE. MQ REliable and VErsatile News delivery support for aGEncies Sistema di Distribuzione Reti di Calcolatori LS – Prof. Antonio Corradi.
Reti di Calcolatori LS - Fabio Poli 15 Giugno 2006 Sviluppo di un player di Campo Minato multigiocatore con supporto di Chat MultiCast.
B IBLIO S ERVICE consultazione di articoli online Anna Riccioni Progetto per il corso di Reti di Calcolatori L-S Anno Accademico
Bacheca: Supporto alla creazione e diffusione di annunci basato su CORBA Corso di Reti di Calcolatori LS Prof. Antonio Corradi Progetto di Elisa Addimanda.
Ingegneria del software Modulo 3 -Tecniche d’implementazione Unità didattica 1 -Ingegneria dei componenti Ernesto Damiani Università degli Studi di Milano.
Live auction un’ infrastruttura di supporto per aste in tempo reale basata su JMS. Autore: Andrea Ceruti Matricola: Corso: Reti Di Calcolatori.
Alex Marchetti Infrastruttura di supporto per l’accesso a un disco remoto Presentazione del progetto di: Reti di calcolatori L-S.
SnippetSearch Database di snippet bilanciato e replicato di Gianluigi Salvi Reti di calcolatori LS – Prof. A.Corradi.
Mobile Agent and Enterprise Architecture Integration Il Gestore di Librerie e Servizi Lambertini Riccardo.
Progettazione e realizzazione di un’applicazione J2EE Parte 2.
Sistemi distribuiti Sistema distribuito indica una tipologia di sistema informatico costituito da un insieme di processi interconnessi tra loro in cui.
Open City Platform è un progetto finanziato da Application Store Tutorial 30/09/2015.
Transcript della presentazione:

Java Distributed Event Service Bringing events to J2EE platform Università degli studi di Bologna Corso di Laurea Specialistica in Ingegneria Informatica Reti di Calcolatori LS Un progetto di: Maurizio Relazione a cura di Maurizio Cimadamore

Outline La piattaforma di sviluppo J2EE Java Distributed Event Service  Architettura di riferimento  Funzionalità avanzate  Benchmark Servizio JDEFilter Conclusioni e sviluppi futuri

Java 2 Enterprise Edition La piattaforma di sviluppo J2EE rappresenta lo standard per lo sviluppo di componenti server Java-based; Integra molteplici tecnologie:  Enterprise JavaBeans (EJB)  Java Message Service (JMS)  … Manca tuttavia un supporto adeguato per la programmazione ad eventi in ambito distribuito!

Java Message Service JMS permette ai componenti J2EE di interagire mediante scambio di messaggi Presenta i vantaggi tipici di un MOM…  Disaccoppiamento (in tempo e spazio)  Persistenza dei messaggi  Supporto per la comunicazione many-to-many … e alcuni limiti  Scarsa espressività  Quale modello di gestione delle risorse JMS?  QoS non sempre adeguato

Java Distributed Event Service Java Distributed Event Service (JDE) fornisce a componenti di un’applicazione J2EE un supporto per la programmazione ad eventi Due ruoli  Produttore di eventi JDE  Gestore di eventi JDE Obiettivi:  Scalabilità  Integrazione all’interno dell’architettura J2EE  QoS

JDE – architettura di riferimento J2EE Application Server JDE Server JDEChannel Client

JDE Channel L’ente JDEChannel disaccoppia i client JDE dalle risorse J2EE allocate sul server e necessarie alla comunicazione distribuita; Grazie ad esso un client JDE può:  Essere abilitato alla ricezione di notifiche remote in corrispondenza del verificarsi di determinati eventi nel sistema (mediante opportune operazioni di registrazione)  Effettuare la generazione di una notifica remota

JDE – architettura di riferimento J2EE Application Server JDE Server JDEChannel Client

JDE Server – propagazione notifiche DBMS Registration EventNotifier EventGenerator EventQueue JDEChannel 2: produce 3: consume 1: generate remote event 5: report remote event 4: read/write registration Application Server Layer Un JDEChannel effettua l’invio di una notifica remota L’ente EventGenerator incapsula tale notifica in un messaggio JMS I messaggi vengono consumati dall’ente EventNotifier Il tipo di notifica viene utilizzato per scoprire, tramite un’operazione di lookup, quali sono i JDEChannel che devono essere notificati dal server JDE Tutti i JDEChannel interessati all’evento ricevuto vengono notificati via callback-object Una registrazione JDE è composta dalla tripletta: Nome evento; JDEChannel ID; Callback Object, tramite il quale il JDEChannel può essere notificato.

JDE – Soft state E’ necessario controllare periodicamente che le registrazioni JDE presenti sul server siano valide;  Una registrazione è valida se il JDEChannel cui essa si riferisce è attivo; JDE adotta la politica Least Recently Used allo scopo di rimuovere periodicamente le registrazioni JDE non utilizzate entro un certo quanto di tempo

JDE – Affidabilità e QoS Necessario evitare congestione sul server JDE a fronte di eccessive richieste di propagazione delle notifiche; Politica Random Early Detection per prevenire la congestione  Una notifica viene propagata con una probabilità proporzionale al numero di messaggi presenti nella coda JMS di JDE; Possibilità di configurazione in cluster ad alta disponibilità (application-server dependent)

JDE – Callback asincrono Necessario minimizzare il tempo impiegato dal server JDE per effettuare la propagazione delle notifiche; Inoltre, problemi legati alla semantica dell’invocazione sul callback object:  Se meccanismo sincrono, possibile stallo del server a causa di un errore nella gestione della notifica (lato client); Meccanismo di callback asincrono assicura:  Disaccoppiamento tra server e client JDE.  Determinazione di eventuali comportamenti erronei nella gestione delle notifiche da parte dei client JDE.

JDE – Risultati benchmark Il tempo di invio e propagazione delle notifiche si mantiene buono all’aumentare del numero di JDEChannel connessi Il tempo di propagazione della notifica varia linearmente con il numero di JDEChannel connessi

Esempio concreto: JDEFilter JDE manca di un servizio di filtraggio delle notifiche di alto livello; JDEFilter integra i servizi offerti da JDE permettendo all’utente di definire regole per il filtraggio delle notifiche in base al loro contenuto; Peculiarità:  File di configurazione XML  Uso di motore inferenziale Prolog per l’applicazione delle regole di filtraggio;

Conclusioni e sviluppi futuri JDE estende la piattaforma J2EE con un servizio di comunicazione ad eventi  Affidabile  Efficiente  Scalabile Molto lavoro ancora da fare…  Sistema di nomi per individuare i client JDE interessati ad un dato evento;  Impiego di application server J2EE professionali (IBM / BEA) per analisi più approfondite;