Questo è un workshop hands-on, in quattro sessioni, dove impareremo come progettare, operare e mantenere Sistemi Distribuiti!
E’ sempre più comune trovarsi a sviluppare e manutenere architetture a (micro)servizi, soprattutto quando ad imporlo sono la presenza di sistemi terzi da integrare, la complessità del dominio di business, o magari forti vincoli di scalabilità e resilienza. Questo ci porta però ad affrontare i più comuni problemi legati al mondo dei Sistemi Distribuiti: ordinamento tra messaggi, accoppiamento temporale e scarsa autonomia tra i servizi, garanzie di delivery, “data ownership”, e nel caso peggiore… Transazioni distribuite!
Come progettare questa classe di sistemi pensando prima di tutto alla loro longevità, manutenibilità, e semplicità di evoluzione?
Questo workshop è in modalità online con diverse sessioni, nelle quali non affronteremo l’argomento nella sua interezza, ma ci concentreremo piuttosto sulla parte riguardante la messaggistica — Con parti di teoria ma soprattutto di pratica hands-on!
A chi è rivolto?
A tutti coloro che vogliono acquisire competenze per poter progettare, operare e mantenere Sistemi Distribuiti. Qualche esempio: team leader, cloud engineer, software architect che gestiscono sistemi complessi in business complessi, oppure coloro che vogliono intraprendere queste carriere.
Quali saranno i giorni e i temi delle sessioni?
- 18 maggio – Messaggi
- 25 maggio – Eventi
- 1 giugno – Architettura – Comandi, eventi e recoverability
- 8 giugno – Saghe e transazioni di business
N.B: Tutte le sessioni saranno dalle 12 alle 13 CET.
Tecnologie utilizzate
Utilizzeremo NServiceBus, RabbitMQ, .NET e C#. Se sono tecnologie e linguaggi che non utilizzi quotidianamente non ti preoccupare, il focus è sui Sistemi Distribuiti e non sullo stack specifico.