download tesi - MobiLab
download tesi - MobiLab
download tesi - MobiLab
You also want an ePaper? Increase the reach of your titles
YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.
Analisi delle prestazioni delle principali soluzioni<br />
per servizi publish/subscribe<br />
Il layer “Model” offre un insieme di comandi incapsulati in classi e funzionalità che fanno<br />
lavoro utile su richiesta dell„applicazione.<br />
Il layer “Session” offre trasporto affidabile di comandi dall‟applicazione al server e<br />
all‟indietro, sincronizzazione e gestione degli errori.<br />
Il layer “Transport” offre framing, codifica dei dati, rilevamento dei fallimenti e canne<br />
multiplexing [51].<br />
2.8.1 AMQP Model Layer<br />
L‟AMQP Model specifica un insieme modulare di componenti e di regole per connettere<br />
questi componenti tra di loro. Ci sono tre principali tipi di componenti, che sono collegati<br />
in catene di processi all‟interno del server per creare la funzionalità desiderata [51]:<br />
“Exchange” riceve i messaggi dall‟applicazione publisher e instrada questi verso<br />
una coda di messaggi basata su un criterio arbitrario, usualmente proprietà del<br />
messaggio o contenuti.<br />
“Message queue” che memorizza i messaggi finchè essi non possono essere<br />
finalmente processati dall‟applicazione che li consuma o da applicazioni multiple.<br />
“Binding” definisce la relazione tra l‟Exchange e la coda e offre i criteri di routing.<br />
Usando questo modello possiamo emulare i concetti classici di middleware di code “store<br />
and forward” o a sottoscrizione per argomento (topic). In linea di principio, un server<br />
AMQP è analogo a un server di posta elettronica, con ogni Exchange che agisce da agente<br />
di trasferimento messaggi e ogni coda come una mailbox, mentre il binding definisce le<br />
tabelle di routing in ogni agente di trasferimento. I Publisher spediscono messaggi ad un<br />
singolo agente di trasferimento il quale poi instrada i messaggi in una mailbox. I<br />
consumatori infine prendono i messaggi dalle mailbox [54].<br />
Il diagramma che segue mostra la semantica del server che deve essere standardizzata con<br />
l‟intento di garantire la interoperabilità tra le implementazioni AMQP [51]:<br />
64