Introduzione alla messaggistica con RabbitMQ
Perché dovremmo usare messaggi per far comunicare le nostre applicazioni? E ancora, perché utilizzarli per abilitare la comunicazione all'interno della stessa applicazione? Scoprilo in questo corso, nel quale utilizzeremo RabbitMQ per mostrare come una architettura basata sui messaggi possa permettere la realizzazione di sistemi più facilmente scalabili e mantenibili.
Cosa imparerai
Che cosa è l’accoppiamento e perché è un problema
Che sono le code, i broker e i bus
Quali sono i limiti DI un’architettura basata su messaggi
Lezioni del corso
-
Struttura, contenuti e prerequisiti del corso
-
Argomenti e struttura
Analizziamo gli argomenti del corso per scroprire cosa impareremo
-
Quali problemi stiamo cercando di risolvere?
Chiariamo bene qual è il problema che stiamo cercando di risolvere, in modo da poter analizzare le possibili souzioni
-
Accoppiamento temporale
Analizziamo il concetto di accoppiamento temporale e del perchè è un problema da risolvere
-
-
I concetti fondamentali di RabbitMQ e i principali pattern di comunicazione
-
Che cos'è una coda
Cominciamo a entrare nel vivo di RabbitMQ analizzando il concetto di coda
-
Connettersi a RabbitMQ e creare una coda
Vediamo il codice necessario a connettersi a RabbitMQ e creare una coda
-
Send/Receive
Analizziamo il pattern Send/Receive e come possiamo implementarlo in RabbitMQ
-
Request/Response
Analizziamo il pattern Request/Response e come possiamo implementarlo in RabbitMQ
-
Request with correlated responses
Infine analizziamo il pattern Request with correlated response e come implementarlo in RabbitMQ
-
-
Gestire processi complessi con RabbitMQ, Exchange e Publish/Subscribe
-
Processi complessi senza orchestrazione
Come è possibile gestire processi complessi senza orchestrazione? Scopriamolo in questa lezione.
-
Accoppiamento spaziale
Risolti i vari tipi di accoppiamento temporale, resta un altro problema da risolvere: l'accoppiamento spaziale. Vediamo che cos'é in questa lezione
-
Che cos'è un exchange
Analizziamo il concetto di Exchange di RabbitMQ per imparare a gestire lo scambio di messaggi
-
Publish/Subscribe con RabbitMQ
Analizziamo il pattern Publish/Subscribe e come implementarlo in RabbitMQ
-
Le transazioni: Outbox pattern
Come possiamo ovviare all'assenza di supporto alle transazioni da parte del broker? Possiamo utilizzare l'outbox pattern descritto in questa lezione
-
-
Amministrazione di RabbitMQ e Conclusioni del corso
-
Amministrazione di RabbitMQ
In questa ultima lezione facciamo una overview del plugin di amministrazione fornito da RabbitMQ
-
Riepilogo del corso
Un recap di tutti i temi trattati nel corso
-
Slide
Le slide del modulo 4
-
Demo
Il codice sorgente con le demo di tutto il corso
-
Il docente
-
Mauro Servienti
Solution Architect - Particular SoftwareMauro is a Solution Architect in Particular Software, the makers of NServiceBus. He spends his time helping developers build better .NET systems leveraging Service Oriented Architecture (SOA) principles and message-based architectures.
When he is not busy with distributed systems he loves to go back to one of his first loves: rich client development using XAML based technologies. Mauro usually writes about technology, but not only, on his English blog at //milestone.topics.it and his Italian blog at //blogs.ugidotnet.org/topics. He is also passionate about road cycling, swimming, classical dance, and music, in general (and skiing, in a previous life).