Magazine

Jelastic e microservizi Java, il matrimonio perfetto

05/03/2020
Microservizi Java per Jelastic
PMIProfessionisti
La tendenza del mercato a orientarsi sempre di più verso soluzioni snelle e modulari ha investito il settore dell’IT nella sua interezza, dalle infrastrutture fino al modo di pensare i servizi stessi. Si è arrivati così al mondo dei microservizi, che ormai da anni stanno erodendo la concezione classica della tradizionale applicazione monolitica per sostituirla con numerosissime applicazioni granulari che sostituiscono singole funzioni e attività in favore di una maggiore flessibilità operativa e gestionale.

Possiamo riscontrare lo stesso trend nell’offerta del cloud, sempre più in grado di soddisfare le esigenze specifiche di aziende di ogni dimensione e di fornire soluzioni modulari e tailor made – per utilizzare un termine forse abusato ma che rende l’idea dell’estrema adattabilità raggiunta – e nella risposta delle imprese stesse, che sembrano abbracciare la competizione e la velocità che questa granularità richiede.
Venendo a mancare le necessità della classica infrastruttura aziendale per portare avanti un progetto digitale complesso, le start-up e le realtà di dimensioni modeste (a volte composte da team ridottissimi) sono i candidati ideali per farsi strada in un mercato che fa della rapidità di sviluppo e della capacità di adattamento una necessità operativa, senza peraltro mai sacrificare la qualità del risultato finale.

In questo contesto i framework per lo sviluppo di app e microservizi si adeguano a queste richieste con soluzioni che facilitano le pipeline di sviluppo, ma che di per sé non eliminano la necessità di dotarsi di un’infrastruttura adeguata, in grado di gestire e sostenere l’intero processo di sviluppo.
È il caso, ad esempio, di Spring Boot, il framework di riferimento per gli sviluppatori di microservizi e app stand-alone che consente di lavorare in modo semplice e immediato, anche per chi affronta il sistema per la prima volta.

Essendo basato su Java, Spring Boot richiede comunque, oltre al framework stesso e a uno strumento di costruzione (come Maven o Gradle), un’ambiente Java per funzionare. Questo, su un’infrastruttura proprietaria o su un IaaS richiederebbe la presenza di un sistemista per provvedere alla gestione dell’intera architettura, richiedendo risorse economiche e competenze non sempre disponibili in realtà nascenti o di dimensioni ridotte – come nel caso di start-up, piccole imprese o sviluppatori indipendenti – che verrebbero sottratte al progetto principale.

Jelastic: la tecnologia container al servizio degli sviluppatori

L’utilizzo di un servizio cloud Container as a Service come Jelastic offre la soluzione perfetta a tutti gli sviluppatori che hanno necessità di disporre di un’architettura completa, modulare e gestibile senza l’intervento di figure specifiche e di un’infrastruttura on premise. La tecnologia CaaS occupa lo spazio tra IaaS, eliminando la necessità di un reparto IT in grado di gestire l’infrastruttura, e il PaaS, che purtroppo limita in parte la libertà di gestire il flusso di sviluppo, distribuzione e integrazione. La tecnologia container offre il livello di astrazione dell’infrastruttura, la cui gestione sarà a carico del Service Provider, lasciando piena libertà attraverso l’utilizzo di un’infrastruttura dockerizzata.

CaaS: deploy made easy

La forza della tecnologia container Jelastic infatti, è proprio di poter costruire una topologia modulare adattabile alle esigenze del singolo progetto attraverso l’utilizzo di nodi ai quali vengono assegnate risorse secondo principi di scalabilità sia verticale (aggiungendo cloudlets dedicati e dinamici al singolo nodo, ovvero pacchetti di risorse computazionali di 400Mhz e 128MB di RAM) che orizzontale (moltiplicando i nodi in parallelo nel caso in cui il sistema registri un carico superiore a una certa soglia continuativamente per un numero definito di minuti). Si raggiunge così un doppio scopo: pieno controllo nell’architettura dell’infrastruttura e completa scalabilità con conseguente controllo dei costi.

Nel caso di SpringBoot, quindi, lo sviluppatore può installare e distribuire il framework in pochissimi minuti e disporre di una topologia preconfigurata a cui aggiungere elementi in funzione del progetto: ecco che all’ambiente base formato dall’application server e un build node contenente Maven è possibile aggiungere cache, storage e DB attraverso un’interfaccia visiva chiara e immediata, perfettamente fruibile anche da mobile.
La presenza di addon preconfigurati permette di aggiungere funzioni utili come la schedulazione di stop/start del server (applicabile anche al db) per limitare i costi, o di agganciare un repository GIT per automatizzare la distribuzione in ottica CI/CD.

Il Marketplace incluso contiene decine di applicativi open source preconfigurati, senza escludere ovviamente la possibilità di caricare immagini dockerizzate di prodotti enterprise licenziati e consentendo allo stesso tempo di costruire architetture complesse con altre piattaforme come Jenkins e GITlib per avere una solida catena CI/CD sempre a disposizione anche in caso di sviluppi concorrenti.
In conclusione, Jelastic offre tutti gli strumenti per configurare e monitorare gli ambienti in ogni singola parte, fino alla creazione di architetture complesse e automatizzate per una gestione autonoma entro i parametri definiti, mantenendo sotto controllo costi e senza mai sacrificare l’usabilità da parte dell’utente, al quale non vengono richieste particolari competenze sistemistiche. Maggiori dettagli sul Marketplace di Jelastic sono reperibili seguendo questo link