AWS Lambda è un servizio di elaborazione serverless che esegue il tuo codice in risposta a determinati eventi e gestisce automaticamente le risorse di elaborazione in uso al tuo posto. Puoi usare AWS Lambda per estendere altri servizi AWS con logica personalizzata oppure creare servizi di back-end in grado di operare con la scalabilità, le prestazioni e la sicurezza di AWS. AWS Lambda può eseguire automaticamente il codice in risposta a più eventi, ad esempio le modifiche a oggetti in bucket Amazon S3 o gli aggiornamenti delle tabelle in Amazon DynamoDB.

Lambda esegue il tuo codice su un'infrastruttura di calcolo ad alta disponibilità e amministra le risorse di elaborazione, tra cui la manutenzione di server e del sistema operativo, il provisioning e il ridimensionamento automatico della capacità, lo sviluppo di patch per codice e protezione e il monitoraggio e la creazione di log. Tutto quello che devi fare è fornire il codice.

AWS Lambda è disponibile

Prova AWS Lambda gratis

Il piano gratuito di AWS include 1 milione di richieste e fino a 3,2 milioni di secondi di tempo di elaborazione al mese con AWS Lambda.

Vedi i dettagli del piano gratuito di AWS »

Per visualizzare i video su questo sito, è necessario Adobe Flash Player o un browser moderno.

ha_ed_webinar_video_380x186
Nozioni di base su AWS Lambda
DevOps_lambda

Il codice che decidi di eseguire su AWS Lambda viene chiamato "funzione Lambda". Una volta creata, una funzione Lambda è sempre attiva e pronta per essere attivata, in modo analogo a una formula di un foglio di lavoro. Ciascuna funzione include il tuo codice e alcune informazioni di configurazione, quali il nome della funzione e i requisiti in termini di risorse. Le funzioni Lambda sono "stateless", prive di affinità con l'infrastruttura sottostante, perciò AWS Lambda può avviare qualsiasi numero di copie della funzione, in base alla frequenza degli eventi in entrata.

Dopo aver caricato la funzione su AWS Lambda, è possibile associarla con le risorse AWS (ad esempio un bucket Amazon S3, una tabella Amazon DynamoDB, un flusso Amazon Kinesis o una notifica di Amazon SNS). Al variare della risorsa, quindi, Lambda eseguirà la tua funzione e gestirà le risorse di elaborazione in modo da soddisfare le esigenze dettate dalle richieste in entrata.

100x100_benefit_ingergration

AWS Lambda ti permette di aggiungere logica personalizzata a risorse AWS quali bucket Amazon S3 e tabelle Amazon DynamoDB, semplificando l'applicazione di elaborazione ai dati man mano che questi vengono immessi o spostati nel cloud.

È facile iniziare a usare AWS Lambda. Prima di tutto, devi creare la funzione caricando il codice (o creandola direttamente dalla console di Lambda) e scegliendo memoria, periodo di timeout e ruolo AWS Identity and Access Management (IAM). Devi quindi specificare la risorsa AWS per l'attivazione della funzione, che può essere un bucket Amazon S3, una tabella Amazon DynamoDB o un flusso Amazon Kinesis specifico. Al variare della risorsa, Lambda eseguirà la tua funzione e avvierà e gestirà le risorse di elaborazione necessarie in base alle richieste in entrata.

100x100_benefit_layers

Puoi usare AWS Lambda per creare nuovi servizi di back-end per le tue applicazioni, attivati on demand usando l'API di Lambda o endpoint API personalizzati creati con Amazon API Gateway. Usando Lambda per elaborare eventi personalizzati invece di gestirli nel client, puoi evitare variazioni della piattaforma client, ridurre il consumo delle batterie e semplificare gli aggiornamenti.

100x100_benefit_ccontainers

AWS Lambda gestisce tutta l'infrastruttura per l'esecuzione del codice in un ambiente a elevata disponibilità e con tolleranza ai guasti, permettendoti di concentrarti sulla creazione di servizi di back-end differenziati. Con Lambda non devi mai aggiornare il sistema operativo sottostante quando viene rilasciata una nuova patch né preoccuparti di dimensionare o aggiungere nuovi server in base all'aumento dell'utilizzo. AWS Lambda distribuisce in modo ottimale il tuo codice, si occupa di tutte le attività di amministrazione, manutenzione e applicazione di patch di sicurezza e offre registrazione e monitoraggio integrati tramite Amazon CloudWatch.

100x100_benefit_durable

Lambda offre tolleranza ai guasti integrata. AWS Lambda gestisce la capacità di elaborazione tra più zone di disponibilità in ogni regione per agevolare la protezione del codice da errori di singoli computer o di strutture di data center. Sia AWS Lambda sia le funzioni in esecuzione nel servizio offrono prestazioni operative prevedibili e affidabili. Il servizio AWS Lambda è progettato per offrire elevata disponibilità per il servizio stesso e per le funzioni da esso gestite, senza tempi di inattività pianificati o finestre di manutenzione.

100x100_benefit_increase-upward1

AWS Lambda richiama il codice solo se necessario e si dimensiona automaticamente per supportare la frequenza delle richieste in entrata, senza alcuna attività di configurazione da parte tua. Il codice può gestire un numero illimitato di richieste. AWS Lambda inizia in genere a eseguire il codice entro pochi millisecondi da un evento e poiché è in grado di dimensionarsi automaticamente, le prestazioni restano costantemente elevate anche con l'aumentare della frequenza degli eventi. Poiché il codice è stateless, Lambda può avviare tutte le istanze necessarie senza distribuzioni prolungate o ritardi di configurazione.

100x100_benefit_migration

Lambda@Edge ti consente di eseguire codice sulle edge location AWS globali senza effettuare il provisioning o gestire i server, rispondendo agli utenti finali sulla latenza di rete più bassa. È sufficiente caricare il codice Node.js su AWS Lambda e configurare la funzione da attivare in risposta alle richieste di Amazon CloudFront (ad es. quando arriva la richiesta di un visualizzatore, quando una richiesta viene inoltrata o ricevuta dall’origine e prima di rispondere all’utente finale).Il codice è quindi pronto per essere eseguito su ogni edge location AWS quando viene ricevuta una richiesta di contenuti e viene ridimensionato con il volume delle richieste sulle edge location CloudFront.

Registrati oggi stesso per l’anteprima di Lambda@Edge.

100x100_benefit_secure

AWS Lambda permette al codice di accedere in modo sicuro ad altri servizi AWS tramite l'SDK AWS corrispondente e l'integrazione con AWS Identity and Access Management (IAM). AWS Lambda esegue di default il codice in un cloud privato virtuale. È anche possibile configurare AWS Lambda in modo che acceda alle risorse che si trovano dietro VPC, consentendo di sfruttare i gruppi di sicurezza personalizzati e le liste di controllo degli accessi di rete per garantire alle funzioni Lambda l'accesso alle risorse all'interno di un cloud privato virtuale.

100x100_benefit_code

Con AWS Lambda non è necessario imparare a usare nuovi linguaggi, strumenti o framework. Puoi usare qualsiasi libreria di terza parte, anche quelle native. AWS Lambda supporta il codice Java, Node.js, C# e Python e in futuro offrirà il supporto anche per altri linguaggi.

100x100_benefit_lowcost-affordable

I prezzi sono calcolati solo in base alle richieste eseguite e al tempo di elaborazione richiesto per l'esecuzione del codice. La fatturazione procede a incrementi di 100 millisecondi, risulta perciò particolarmente semplice e conveniente limitare le risorse quando le richieste ricevute sono poche al giorno e aumentarle quando sono migliaia al secondo.

100x100_benefit_flexible

Una volta scelta la quantità di memoria che vuoi allocare alle tue funzioni, AWS Lambda assegna in modo proporzionale la potenza della CPU, la larghezza di banda di rete e l'I/O su disco.