Progettazione dell'architettura di funzioni serverless

L'architettura serverless evolve le piattaforme cloud verso il codice nativo del cloud puro astraendo il codice dall'infrastruttura che deve eseguire. Funzioni di Azure è un'opzione di calcolo serverless che supporta funzioni, piccole parti di codice che esecuno singole operazioni.

I vantaggi dell'uso di architetture serverless con le applicazioni di Funzioni includono:

  • L'infrastruttura di Azure fornisce automaticamente tutti i server aggiornati necessari alle applicazioni per continuare a essere eseguite su larga scala.
  • Le risorse di calcolo allocano dinamicamente e immediatamente la scalabilità automatica per soddisfare le richieste elastiche. Serverless non significa "nessun server", ma "meno server", perché i server vengono eseguiti solo in base alle esigenze.
  • La micro-fatturazione consente di risparmiare sui costi addebitando solo le risorse di calcolo e la durata che il codice usa per l'esecuzione.
  • Le associazioni di funzione semplificano l'integrazione fornendo l'accesso dichiarativo a un'ampia gamma di servizi di Azure e di terze parti.

Le funzioni sono guidate da eventi. Un evento esterno, ad esempio una richiesta Web HTTP, un messaggio, una pianificazione o una modifica nei dati, attiva il codice della funzione. Un'applicazione di Funzioni non codifica il trigger, ma solo la risposta al trigger. Con una barriera inferiore all'ingresso, gli sviluppatori possono concentrarsi sulla logica di business, anziché scrivere codice per gestire problemi di infrastruttura come la messaggistica.

Funzioni di Azure è un servizio gestito in Azure e Azure Stack. Il runtime open source funzioni funziona in molti ambienti, tra cui Kubernetes, Azure IoT Edge, locale e altri cloud.

Funzioni e serverless richiedono nuovi modi di pensare e nuovi approcci per la creazione di applicazioni. Non sono le soluzioni giuste per ogni problema. Per esempi di scenari di funzioni serverless, vedere Architetture di riferimento.

Passaggi di implementazione

La corretta implementazione di tecnologie serverless Funzioni di Azure richiede le azioni seguenti:

  • Decidere e pianificare

    Gli architetti e i technical decision maker (TDM) eseguono la valutazione delle applicazioni, svolgono o partecipano a workshop tecnici e corsi di formazione, eseguono progetti modello di verifica (PoC) o progetti pilota e svolgono sessioni di progettazione dell'architettura in base alle esigenze.

  • Sviluppare e distribuire app

    Gli sviluppatori implementano procedure e modelli di sviluppo di app per funzioni serverless, configurano DevOps pipeline e adottano le procedure consigliate di Site Reliability Engineering (SRE).

  • Gestire le operazioni

    I professionisti IT identificano le configurazioni di hosting, la scalabilità a prova di futuro automatizzando il provisioning dell'infrastruttura e mantenendo la disponibilità pianificando la continuità aziendale e il ripristino di emergenza.

  • Proteggere le app

    I professionisti della sicurezza Funzioni di Azure informazioni di base sulla sicurezza, proteggere la configurazione dell'hosting e fornire indicazioni sulla sicurezza delle applicazioni.