giuseppe e giacomo evento soiel 9 novembre.jpg

Il 9 Novembre si è tenuto ‘La qualità del software per la qualità del business’, evento organizzato da Soiel International sui temi dell’IT e delle sue applicazioni aziendali. Focus del convegno sono state le architetture basate su microservizi.

In un mondo che diventa mano a mano più digitale, il software gioca un ruolo sempre più centrale nelle considerazioni delle imprese. Le applicazioni aziendali, oggi disponibili su qualsiasi dispositivo, permettono un uso semplice, sicuro anche da remoto e in mobilità, garantendo alle aziende un buon grado di efficienza e flessibilità nelle operazioni quotidiane.

Innovazioni come il Cloud hosting e le applicazioni cross platform hanno raggiunto oggi un buon livello di maturità, tale per cui la loro diffusione oggi si registra anche in contesti aziendali più piccoli, rendendo possibile per queste realtà una certa reattività al cambiamento e una leva competitiva significativa.

Ed è proprio sulla relazione che lega qualità del software e risultati del business che si è concentrato il Digital Roadshow organizzato da Soiel International, nella forma di una serie di convegni concentrati sui temi dell’IT e delle sue applicazioni in azienda.

L’ultima tappa di questo ciclo di eventi si è tenuta il 9 Novembre, con un focus sulle architetture a microservizi: in quanto appassionati di tecnologia non potevamo esimerci dal partecipare all’evento in qualità di relatori. Se non siete riusciti a parteciparvi, abbiamo realizzato per i lettori del Magazine SAEP un breve estratto del convegno.

La qualità del software per la qualità del business, il convegno di Soiel

Come abbiamo anticipato, per le imprese è fondamentale poter disporre di software affidabile, sicuro e aperto all'innovazione. In un contesto competitivo in cui la tecnologia gioca un ruolo sempre più predominante, questi aspetti possono infatti determinare il successo o il fallimento di una attività. In quest’ottica, l’innovazione tecnologica costante rappresenta per le imprese una risorsa strategica molto importante, se non fondamentale.

E’ per questo che le nuove infrastrutture tecnologiche oggi devono essere sì efficaci, ma soprattutto flessibili: aperte a un'evoluzione costante e in grado di mutare configurazione senza troppi sforzi. Proprio per questo motivo sono nate le infrastrutture basate su servizi e microservizi. Ed è su questa premessa che si sono concentrati gli interventi che si sono susseguiti nel corso della giornata.

Cosa sono le architetture a microservizi?

Con il termine microservizi si intende una parte di una soluzione IT che è stata pensata, progettata, sviluppata e implementata in maniera indipendente rispetto alle altre.

Rispetto agli approcci tradizionali, cosiddetti monolitici, i microservizi si caratterizzano per una frammentazione della soluzione nelle sue funzioni caratteristiche.

monolite-vs-microservizi.png

Questo rappresenta un approccio del tutto nuovo alla realizzazione di applicativi: se prima infatti si guardava alla soluzione informatica come un unico blocco (monolite), oggi grazie ai microservizi è possibile spacchettare il software nelle sue funzioni, con grandi benefici in materia di razionamento delle risorse, mantenimento e manutenzione del sistema.

Ognuna delle funzioni in cui si suddivide il software prende il nome di servizio: questo approccio, se portato all’estremo, può portare a quelle che vengono comunemente definite architetture a microservizi.

Questa nuova metodologia risponde alle esigenze di velocità, flessibilità e scalabilità molto sentite dalle aziende contemporanee: ciò permette alla soluzione IT di evolvere e scalare a seconda delle necessità che possono emergere, aiutando l’impresa a rimanere competitiva in un clima di costante mutamento.

L’intervento realizzato da SAEP

L’intervento che abbiamo realizzato per l’occasione si poneva come obiettivo quello di raccontare l’esperienza SAEP ICT Engineering in merito alle architetture a microservizi. Data la complessità di questo genere di progetti, abbiamo pensato potesse essere di interesse per il pubblico poter vedere un’applicazione concreta dei microservizi in azienda, del loro funzionamento e dei vantaggi che derivano dal loro impiego.

Anzitutto è necessario fare una premessa: l’approccio metodologico delle architetture basate su microservizi è stato reso possibile da una serie di innovazioni tecnologiche, in particolare il potenziamento delle infrastrutture Cloud, Docker e Kubernetes.

Il Cloud, probabilmente il più conosciuto tra questi concetti, permette di ospitare (hosting) il software su architetture distribuite: in questo modo, l’utente finale non deve necessariamente disporre di hardware per utilizzare il software, ma si appoggia a un fornitore che rende le risorse disponibili su richiesta.

Sul Cloud e su come esso si differenzi dall’hosting tradizionale (On premises), abbiamo scritto un articolo che potete trovare qui.

Meno celebri sono i concetti di Docker e Kubernetes; attraverso i Docker (traducibile in italiano come ‘scaricatore’) è una tecnologia che permette di semplificare il deployment di una soluzione, isolando le risorse software in ‘containervirtualizzati a livello del sistema operativo. Questo permette a ‘contenitori’ indipendenti di coesistere nello stesso sistema operativo, evitando le complicazioni relative al mantenimento di una macchina virtuale (installazione e manutenzione in primis).

Con il termine Kubernetes invece si indica un sistema di gestione e orchestrazione dei container. Il sistema Kubernetes suddivide le applicazioni gestite in master e nodi: attraverso di essi, viene coordinata l’esecuzione dei carichi di lavoro attraverso la clusterizzazione dei server, che viene controllata da Kubernetes stesso.

In concreto, attraverso la combinazione di questi sistemi, le aziende possono superare i vincoli di partenza delle tecnologie adottate: con un approccio monolitico l’unica possibilità di ‘scalare’ la soluzione è quella di far crescere l’intera architettura informativa. Con l’impiego dei microservizi è invece possibile effettuare uno scaling mirato, incentrato sulla componente e non sull’intera soluzione, offrendo un ampio margine di flessibilità e permettendo all’azienda di evolvere sistemi e configurazioni al mutare delle necessità organizzative.

I vantaggi dell’adozione di un approccio basato su microservizi comporta quattro benefici principali:

  • scalabilità istantanea, ovvero la capacità del sistema di assorbire picchi di lavoro;
  • la resilienza, fortemente legata alla scalabilità, permette di degradare le risposte del server durante un eventuale picco di lavoro, in modo da evitarne il blocco;
  • il disaccoppiamento, permettendo l’accesso ai servizi tramite meccaniche di interfacciamento standard come le API;
  • una semplice integrazione con servizi terzi e open, permettendo di costruire un’architettura di servizi senza doverla necessariamente scrivere.

presentazione-intervento-soiel.png

Conclusioni

La realizzazione di un’architettura a microservizi comporta numerose sfide, tecnologiche e di progettazione: se da un punto di vista accademico la metodologia è piuttosto chiara, la traduzione di questi concetti in un’organizzazione aziendale non è altrettanto semplice.
Se dal lato tecnologico molti sono i nuovi ritrovati che vanno nella direzione di una crescente frammentazione delle architetture, come i docker e l’evoluzione delle infrastrutture Cloud, dal punto di vista progettuale esiste un aspetto particolarmente delicato: fino a che livello frammentare l’architettura in servizi? Che livello di granularità degli applicativi raggiungere?

E’ bene ricordare che obiettivo metodologico di questo approccio ottenere una maggiore flessibilità e scalabilità: un’eccessiva frammentazione degli applicativi potrebbe avere un effetto contrario, complicando enormemente la struttura e paralizzando il reparto IT.

Esistono poi ambiti applicativi che per loro natura risultano più difficili da frammentare in microservizi: questo non deve rappresentare un limite alla ricerca, all’innovazione e all’impiego dei microservizi, deve diventare anzi una spinta a comprendere quali sono gli aspetti su cui potrebbe essere più efficace e funzionale insistere con questo approccio (come i micro Front End).

C’è poi una sfida tutta organizzativa che le imprese devono affrontare: come adattare i principi metodologici alle specificità della realtà aziendale? Ogni azienda dispone di processi particolari e basati sulle necessità operative e questo potrebbe richiedere uno sforzo ulteriore nell’applicazione di queste metodologie.

L’evento ha rappresentato un’occasione di arricchimento e approfondimento su temi ancora nuovi e per certi versi inesplorati: non vediamo l’ora di partecipare al prossimo appuntamento del Digital Roadshow organizzato da Soiel International, che ringraziamo per la buona riuscita del convegno.

Se siete interessati a vedere la presentazione che abbiamo realizzato per l’evento, è scaricabile in formato pdf a questo link.