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:

  • CTO - Managed Designs

    Andrea Saltarello è CTO di Managed Designs, azienda di consulenza e sviluppo software per la quale ricopre anche le mansioni di software architect.

    In qualità di Microsoft Regional Director, è advisor del senior leadership team di Microsoft Corporation, offrendo ad esso feedback strategico. Per il suo impegno a supporto delle community è stato annualmente premiato quale Microsoft Most Valuable Professional dal 2003 ad oggi.

    È autore di articoli tecnici per differenti testate editoriali e co-autore di "Microsoft .NET: Architecting Applications for the Enterprise", pubblicato da Microsoft Press.

    È inoltre docente a contratto per i master del Politecnico di Milano dedicati a Big Data ed Intelligenza Artificiale e relatore presso eventi e conferenze internazionali quali: Codemotion, Microsoft Ignite Tour, WPC ed altre ancora.

  • Senior Developer - Managed Designs

    Senior Developer presso Managed Designs, è Microsoft Certified Professional, AWS Certified Alexa Skill Builder e leader di Azure Meetup Milano.