Serverless computing per sviluppare di più con meno

Creare ed eseguire codice senza preoccuparsi della infrastruttura che si attiva, e si paga, solo quando serve. È questa la sintesi di un servizio cloud che sta sempre più trovando estimatori

La costante evoluzione delle architetture IT sta spingendo verso una sempre maggiore delocalizzazione delle risorse e a un loro uso finalizzato solo al bisogno. Artefice di questa grande trasformazione è il cloud con i suoi servizi offerti. Quello del serverless computing è uno dei più interessanti, anche se ancora non è sfruttato al massimo. Alla base c’è l’idea di eseguire codice solo nel caso di specifici eventi come una richiesta HTTP, un trigger di database o un messaggio in coda. Solo quando si verifica l’evento il provider di servizi cloud esegue il codice e questo avviene senza dover mantenere un server dedicato sempre online e in attesa. Si basa dunque sul concetto di Function-as-a-Service (FaaS), in cui gli sviluppatori scrivono codice in piccole funzioni modulari che vengono eseguite, come detto, in risposta a eventi specifici. Queste funzioni vengono di norma realizzate in linguaggi di alto livello come Python, Node.js o Java e caricate sulla piattaforma di un provider cloud. Quando un evento attiva una funzione, il cloud provider fornisce in modo automatico le necessarie risorse per eseguire il codice. Una volta completata l’esecuzione della funzione, avviene il “deprovisioning” delle risorse e la funzione non è più in esecuzione.

Vantaggi

Questa soluzione offre indubbiamente dei vantaggi che possiamo riassumere in questi quattro punti.

  • Riduzione dei costi: si paga solo per l’uso effettivo, le aziende quindi possono ridurre i costi operativi, evitando spese per server inattivi.
  • Focus sullo sviluppo: gli sviluppatori possono concentrarsi sulla scrittura del codice e sullo sviluppo di funzionalità, senza doversi preoccupare della gestione dell’infrastruttura.
  • Scalabilità: le applicazioni serverless possono scalare in modo automatico in risposta a picchi di traffico, garantendo così prestazioni ottimali senza intervento manuale.
  • Rapidità di sviluppo: la possibilità di implementare in modo rapido nuove funzionalità e aggiornamenti consente un ciclo di sviluppo più agile.

Però ogni rosa ha le sue spine e anche il serveless computing ha degli aspetti da tenere in considerazione. In particolare c’è la dipendenza dal fornitore di servizi cloud e un eventuale, futuro, passaggio può essere complesso. Se da una parte semplifica la gestione dell’infrastruttura, dall’altra introduce una maggiore complessità nella progettazione dell’applicazione, inoltre, questa ha dei limiti di durata temporale e di memoria che possono in alcune situazioni essere troppo vincolanti. Il problema principale, ma i provider stanno lavorando per risolverlo, è la latenza a freddo: le prime esecuzioni della funzione possono avere una latenza maggiore rispetto a quando il sistema è a regime. Il serverless computing, dunque, è un modello di calcolo cloud che offre molti vantaggi, tra cui la riduzione dei costi, la scalabilità automatica e la maggiore velocità di sviluppo. Tuttavia, presenta anche alcuni problemi, come le limitazioni di tempo di esecuzione e di memoria, la dipendenza dal provider e la difficoltà di debugging. Gli sviluppatori devono valutare vantaggi e problemi del serverless computing prima di adottarlo per le loro applicazioni.

L’offerta attuale

A oggi tutti i principali operatori cloud offrono soluzioni per il serverless computing. Una delle più conosciute è AWS Lambda, utilizzata per automatizzare attività, elaborare dati in tempo reale e costruire applicazioni scalabili. Google Cloud Functions, invece, è usata in particolare per creare microservizi e automatizzare flussi di lavoro.

Trova soprattutto spazio nella costruzione di applicazioni serverless e nell’automatizzazione di processi aziendali la soluzione Microsoft Azure Functions. IBM propone Cloud Code Engine, sfruttata specialmente per applicazioni di calcolo ad alte prestazioni e analisi dei dati. OpenFaaS, invece, è un progetto open-source che permette di eseguire funzioni serverless su qualsiasi infrastruttura kubernetes.

Il futuro

Nel prossimo futuro sarà sempre più adottato, infatti, il serverless computing sta acquisendo sempre più popolarità per la sua capacità di semplificare lo sviluppo e ridurre i costi. Inoltre, le piattaforme serverless stanno integrando servizi di machine learning e permettono agli sviluppatori di costruire applicazioni intelligenti senza dover gestire l’infrastruttura sottostante. Gli sviluppi futuri vedranno lo spostamento di alcuni servizi serverless verso l’edge computing così da elaborare i dati più vicino alla fonte, diminuendo latenza e migliorando le prestazioni. Il serverless computing è dunque una soluzione efficace e scalabile per costruire applicazioni moderne.

LE VISION 

Serverless computing per sviluppare di più con meno, Serverless computing per sviluppare di più con meno
Mario Menichetti, Ceo di CIPS Informatica

CIPS Informatica

Per i distributori come CIPS Informatica il serverless computing può essere una opportunità, soprattutto in questo momento del mercato. Questa è la visione di Mario Menichetti, Ceo di CIPS Informatica. “Il mercato italiano del serverless computing sta vivendo una crescita straordinaria, guidata dall’esigenza di flessibilità, scalabilità e ottimizzazione dei costi. Sempre più aziende scelgono questa tecnologia come naturale evoluzione del cloud computing, focalizzandosi sullo sviluppo delle applicazioni senza preoccuparsi dell’infrastruttura sottostante. Per distributori IT come CIPS Informatica, il serverless è un’opportunità per diventare partner strategici dei VAR, system integrator e aziende, accelerando il time-to-market e supportando settori come fintech, retail e manufacturing, dove innovazione e rapidità sono cruciali. Anche le PMI, grazie a modelli di pricing basati sul consumo reale, possono adottare soluzioni avanzate riducendo costi e sprechi energetici.

Tuttavia, questa evoluzione porta sfide significative: dalla necessità di nuove competenze tecniche alla riorganizzazione dei flussi di lavoro, senza dimenticare i rischi di sicurezza legati alla conformità e alla gestione multi-cloud. In questo scenario, il ruolo del distributore è centrale: investire nella formazione e offrire consulenza strategica diventa essenziale. Come CIPS Informatica, il nostro obiettivo è trasformare opportunità in valore concreto per i nostri partner, attraverso piattaforme innovative e programmi dedicati, come ELEVATE Yourself. Siamo entusiasti di essere parte attiva di questa evoluzione, svolgendo il lavoro che ci siamo sempre prefissi di fare ovvero essere abilitatore di mercato prima che classico distributore”.

Serverless computing per sviluppare di più con meno, Serverless computing per sviluppare di più con meno
Stefano Dindo, head of software development di 7Circle

7Circle

7Circle, parte di VarGroup, supporta le imprese nel percorso di trasformazione digitale, studiando con loro le migliori soluzioni infrastrutturali e applicative. Stefano Dindo, head of software development di 7Circle, fotografa le opportunità del serverless computing da un punto di vita privilegiato. “Tra le aziende che possono beneficiare maggiormente delle opportunità offerte dal serverless computing troviamo quelle in fase di trasformazione digitale, che possono modernizzare applicazioni legacy e standardizzare i processi di sviluppo. Anche le startup e le imprese in rapida crescita traggono vantaggio dalla scalabilità immediata senza necessità di investimenti iniziali significativi.

I settori con carichi di lavoro variabili, come l’e-commerce e i servizi finanziari, possono ottimizzare le risorse in base alla domanda effettiva. Le organizzazioni focalizzate sull’innovazione trovano nel serverless un alleato prezioso per sperimentare rapidamente nuove funzionalità e implementare servizi di artificial intelligence/machine learning. Nei contesti aziendali complessi, il serverless facilita l’integrazione dei sistemi senza interferire con le infrastrutture esistenti. Inoltre, nel settore pubblico e nei servizi, promuove l’adozione di standard comuni e la condivisione di dati tra diverse componenti applicative. I principali use case includono la modernizzazione delle applicazioni legacy, la gestione di carichi di lavoro variabili, l’elaborazione in tempo reale, la gestione di picchi di carico imprevedibili, i sistemi IoT, la sperimentazione rapida di nuove funzionalità e l’implementazione di servizi AI/ML. Per massimizzare i benefici di questa tecnologia, le organizzazioni devono avere una chiara strategia di modernizzazione digitale, ripensare l’architettura applicativa e investire nella formazione del team di sviluppo”.

Serverless computing per sviluppare di più con meno, Serverless computing per sviluppare di più con meno
Roberto Vicenzi, chief sales and marketing officer di MegaByte Sistemi Informatici

MegaByte Sistemi Informatici

Per Roberto Vicenzi, chief sales and marketing officer di MegaByte Sistemi Informatici, il serverless computing ha una sua collocazione sul mercato italiano grazie ai suoi vantaggi.

“Il serverless computing è ideale per aziende multi-sede con operatività distribuita e carichi di lavoro variabili. Un caso emblematico è quello di aziende che operano in contesti stagionali, con picchi di traffico imprevedibili. Grazie al modello serverless, queste realtà possono gestire volumi elevati di dati e interazioni senza dover investire in infrastrutture fisiche o risorse dedicate. L’implementazione serverless consente di adattarsi dinamicamente alla domanda. Attraverso i servizi cloud di MegaByte, i clienti hanno ottenuto scalabilità automatica, gestendo richieste in tempo reale su diverse sedi senza rallentamenti o inefficienze. I vantaggi principali sono: scalabilità dinamica, risorse adeguate automaticamente al carico di lavoro, garantendo un servizio fluido in ogni sede; riduzione dei costi, con il modello “pay-as-you-go”, i costi operativi sono ottimizzati, senza sprechi durante i periodi di bassa domanda; focus sull’innovazione; liberati dalla gestione dell’infrastruttura, i gruppi di lavoro possono dedicarsi a migliorare servizi e implementare nuove funzionalità. Il serverless computing è una soluzione strategica per aziende che vogliono ottimizzare le operazioni, ridurre i costi e innovare per competere in mercati sempre più dinamici. Le piattaforme serverless internazionali come Amazon, Google e Microsoft sono una risposta tecnologica ideale, ma nella soluzione MegaByte i clienti trovano anche flessibilità, consulenza e risparmi davvero importanti”.

LEGGI ANCHE Il mercato del cloud in Italia vale 6,8 miliardi di euro

LEGGI ANCHE

Gli ultimi articoli