Che cosa è serverless computing e perché dovremmo cura?

0
27

Zero

Lo sviluppo di applicazioni usato per essere un affare costoso, che richiede un capitale iniziale di investimento in hardware e software prima di una singola riga di codice è stato generato. Come sappiamo, il cloud computing, tutto è cambiato, e ora a servizi online che forniscono le risorse hardware e software esiste per adattarsi a tutte le esigenze e tutte le tasche.

Fino a poco tempo fa, tuttavia, i servizi basati su cloud, hanno guardato in modo molto simile a quelli che – date le risorse e la necessità, il vostro business potrebbe avere sviluppato. In altre parole, essi hanno la tendenza ad essere monolitico blocchi di codice progettato per essere eseguito su un singolo server, se ospitato in locale o nel cloud.

L’implicazione è che l’hardware per eseguire tali applicazioni devono ancora essere eseguito il provisioning, configurato e pagati per eseguire l’applicazione. Ma ora c’è un modo migliore in avanti.

Che cosa è serverless?

Serverless computing consente di scrivere e distribuire il codice senza il fastidio di gestire l’infrastruttura sottostante. Mentre i server sono ancora necessari per eseguire le applicazioni – o (più precisamente) funzioni – l’architettura è progettata in modo che lo sviluppatore non ha bisogno di preoccuparsi di gestione del server, o per rendere la capacità di decisioni di pianificazione.

Come può questo essere? Un tipico serverless app sarà composto da un numero di funzioni – che è il motivo per cui troverete serverless piattaforma di fornitori in grado di offrire funzioni-as-a-service (FaaS). Ogni funzione è una componente dell’app, collegati al back-end del fornitore della piattaforma, o da reti di terze parti. La meccanica di come funziona sono della provincia di il provider che gestisce il processo e spese, sulla base delle funzionalità di business consegnato, non l’hardware. In altre parole, questo è il pay-as-you-go esecuzione di codice.

Serverless codice è di solito basato su eventi. Gli sviluppatori hanno bisogno solo di preoccupazione se stessi con la creazione di codice che si comporta in un modo specifico in risposta a specifiche ingressi; codice modulare, che viene eseguito indipendentemente dal resto dell’app, in altre parole. Esso viene eseguito quando viene attivato, e una volta che ha completato il suo compito si gira in giù, in attesa di una nuova chiamata.

Vantaggi

Tra i vantaggi principali di serverless è maggiore costo-efficacia, in quanto si paga solo per il tempo impiegato per l’esecuzione del codice, non per il tempo di inattività. E perché serverless le funzioni possono essere richiamate in frazioni di secondo, le spese possono essere altamente granulare. Si migliora anche la produttività degli sviluppatori, concentrandosi su ciò che conta di più: la creazione di applicazioni e l’astrazione di distanza i problemi dell’hardware e la compatibilità, o back-end di dettagli come il multi-threading.

Per esempio, invece di pagare per eseguire sempre il backup del database server, un FaaS funzione potrebbe rispondere a una richiesta http da parte del cliente. Essere serverless, tuttavia, non ha bisogno di essere in esecuzione tutto il tempo, a differenza di un tradizionale server di database in Modo che la richiesta è indirizzata al back-end è la responsabilità del FaaS provider, quindi, ripartire il carico di una serie di provisioning e la gestione di decisioni da parte dello sviluppatore o SMB. Questo significa anche che la funzione è automaticamente scalabile: un serverless funzione quando necessario, senza dover essere fornito.

Riepilogo

Serverless offre zero server di gestione, nessun upfront di provisioning, auto-scaling per soddisfare il traffico di richieste, ed è costo-efficace: si paga solo per le risorse utilizzate. Siamo ancora agli inizi, ma i segni sono chiari: senza server consente di risparmiare denaro e consente di tagliare complessità.

Argomenti Correlati:

Cloud

0