Microservizi: architettura e funzioni

Le architetture a microservizi consentono di separare applicazioni monolitiche in singole componenti, di piccole dimensioni, indipendenti ed autonome che interagiscono fra loro favorendo il riuso del software e semplificando l’evoluzione e la manutenzione dello stesso. L’implementazione di queste architetture può avvenire sia on-premise che su cloud e può utilizzare quasi tutte le tecnologie esistenti sia in termini di linguaggi di programmazione, di strumenti di memorizzazione dati e di piattaforme per l’erogazione dei servizi. Ma quali passi bisogna fare per progettare un’applicazione a microservizi? Cosa cambia rispetto allo sviluppo tradizionale? Quali sono i principali pattern da adottare? Quali sono le implicazioni sulle performance, sul governo dei servizi e sulla sicurezza? Questo seminario, di carattere introduttivo, vuole fornire ai partecipanti i concetti fondamentali per iniziare a progettare applicazioni a microservizi e una descrizione dei principali framework per l’implementazione degli stessi.

Home » Elenco Corsi  » Microservizi: architettura e funzioni

Contenuti

- Introduzione

Cosa sono i microservizi; caratteristiche fondamentali; vantaggi e svantaggi rispetto allo sviluppo tradizionale; quando sono applicabili e quando è meglio evitare.

- Breve ripasso alle Service Oriented Architecture

Concetti fondamentali delle architetture a servizi; il registry e il repository; tipologie di servizi; orchestration & choreography; microservizi come evoluzione delle SOA e principali differenze.

- Architettura di riferimento

Componenti principali di un sistema a microservizi; i container, questi sconosciuti; comunicazione fra i servizi; il sistema di orchestrazione; service discovery & API Gateway.

- Progettare applicazioni a microservizi

Decomposione delle componenti applicative; progettazione dei layer di data access, business logic, api exposition e presentation; principali pattern per la progettazione e lo sviluppo delle applicazioni; pattern per la comunicazione distribuita; deploy.

- Governance

Il processo di governance; censimento dei microservizi; gestione dei template delle immagini; monitoraggio dei servizi e del loro utilizzo; principali regole da adottare; architettura di riferimento per la governance.

- Sicurezza dei microservizi

Architettura di riferimento per la gestione della sicurezza; sicurezza delle comunicazioni; sicurezza e privacy dei dati; sicurezza delle componenti applicative; principali pattern per la gestione della sicurezza.

- Tecnologie e strumenti

Docker come strumento per l’erogazione dei servizi; kubernates per la gestione e l’orchestrazione; le principali piattaforme per lo sviluppo a microservizi: Spring CLoud, Netfix OSS, RedHat Openshift; le soluzioni cloud based di Microsoft, Google e Amazon.

3 giorni

Prerequisiti

Conoscenze base sulle tecnologie Internet, sulle applicazioni distribuite e sulla crittografia.


Destinatari

Capi Progetto

Analisti

Progettisti

Sviluppatori

Torna in alto