Corso "Microservices essentials" - UGIdotNET
Questo sito si serve dei cookie per fornire servizi. Utilizzando questo sito acconsenti all'utilizzo dei cookie. Ulteriori informazioni Ok

Microservices essentials

Rendi l'evoluzione delle tue applicazioni più flessibile e con maggior controllo

  12/2021     Italiano

Programma

Tra le impostazioni architetturali recenti, quella basata su Microservices (o Microservizi) è sicuramente quella che ha riscosso il maggior successo promettendo flessibilità, maggior controllo e velocità evolutiva rispetto alle pregresse soluzioni analoghe. L'idea di base consiste nell'adozione di una strategia di scomposizione del sistema in componenti realizzati, mantenuti e distribuiti indipendentemente l'uno dall'altro e comunicanti mediante una interfaccia programmatica (API) che essi si impegnano a rispettare. In tal senso, ogni componente potrà essere evoluto in maniera totalmente indipendente da ogni altro. 

Tutto ciò sembra aderire perfettamente alla definizione ISO di solution architecture fornita dallo standard ISO/IEC/IEEE 42010:

The fundamental concepts or properties of a system in its environment, embodied in its elements, relationships, and in the principles of its design and evolution.

Teoria e pratica apparentemente messe d'accordo quindi, ma è davvero così?

Mantenere la promessa, in realtà, presenta difficoltà a causa della necessità di competenze multidisciplinari per progettare, prima ancora che implementare, soluzioni basate su questa impostazione. Occorre, infatti, quanto meno delineare delle strategie per effettuare:

  • Il partizionamento architetturale della applicazione
  • La definizione delle API di ogni microservizio
  • L'impacchettamento, ai fini della distribuzione, di ogni partizione

In questo corso, mostreremo come utilizzare i Bounded Context di Domain Driven Design quale strategia di base per il partizionamento; successivamente, analizzeremo la problematica della definizione della API dei nostri microservizi affrontando il tema sia dal punto di vista di design (es: API private e pubbliche), sia dal punto di vista tecnico (es: HTTP, gRPC, sincrono/asincrono). Infine, sarà affrontato il tema della distribuzione dei microservizi analizzando sia l'utilizzo dei container quale strumento di base, sia effettuando una introduzione alle tematiche specifiche alla pubblicazione in cloud.

Corso on-demand

Vuoi organizzare una edizione privata del corso? Contattaci!

CONTATTACI

Docenti

Questo corso è tenuto da uno dei seguenti docenti: