Operazioni delle app per funzioni serverless

Questo articolo descrive le considerazioni sulle operazioni di Azure per le applicazioni Funzioni serverless. Per supportare le app per le funzioni, il personale operativo deve:

  • Comprendere e implementare configurazioni di hosting.
  • Scalabilità a prova di futuro automatizzando il provisioning dell'infrastruttura.
  • Mantenere la continuità aziendale soddisfando i requisiti di disponibilità e ripristino di emergenza.

Pianificazione

Per pianificare le operazioni, comprendere i carichi di lavoro e i relativi requisiti, quindi progettare e configurare le opzioni migliori per i requisiti.

Scegliere un'opzione di hosting

Il runtime di Funzioni di Azure offre flessibilità nell'hosting. Usare la tabella di confronto dei piani di hosting per determinare la scelta migliore per i requisiti.

  • Funzioni di Azure piani di hosting

    Ogni progetto Funzioni di Azure distribuisce ed esegue nella propria app funzioni, ovvero l'unità di scala e i costi. I tre piani di hosting disponibili per Funzioni di Azure sono il piano a consumo, il piano Premium e il piano Dedicato (servizio app). Il piano di hosting determina il comportamento di ridimensionamento, le risorse disponibili e il supporto per funzionalità avanzate come la connettività di rete virtuale.

  • Servizio Azure Kubernetes

    Le funzioni basate su Kubernetes forniscono il runtime di funzioni in un contenitore Docker con scalabilità basata su eventi tramite la scalabilità automatica basata su eventi basata su Kubernetes (KEDA).

Per altre informazioni sui piani di hosting, vedere:

Informazioni sul ridimensionamento

I piani di hosting Serverless Consumption e Premium vengono ridimensionati automaticamente, aggiungendo e rimuovendo Funzioni di Azure istanze host in base al numero di eventi in ingresso. Il ridimensionamento può variare in base a diverse dimensioni e comportarsi in modo diverso in base a piano, trigger e linguaggio del codice.

Per altre informazioni sul ridimensionamento, vedere:

Comprendere e risolvere gli avvii ad accesso sporadico

Se il numero di istanze host viene ridotto a zero, la richiesta successiva ha la latenza aggiunta del riavvio dell'app per le funzioni, denominata avvio a freddo. L'avvio a freddo è un punto di discussione di grandi dimensioni per le architetture serverless e un punto di ambiguità per Funzioni di Azure.

Il piano di hosting Premium impedisce l'avvio a freddo mantenendo attive alcune istanze. La riduzione delle dipendenze e l'uso di operazioni asincrone nell'app Funzioni riducono al minimo l'impatto degli avvii ad accesso sporadico. Tuttavia, i requisiti di disponibilità possono richiedere l'esecuzione dell'app in un piano di hosting dedicato con Always On abilitato. Il piano dedicato usa macchine virtuali dedicate, quindi non è serverless.

Per altre informazioni sull'avvio a freddo, vedere Informazioni sull'avvio a freddo serverless.

Identificare le considerazioni sull'archiviazione

Ogni app Funzioni di Azure si basa su Archiviazione di Azure per operazioni come la gestione di trigger e la registrazione delle esecuzioni delle funzioni. Quando si crea un'app per le funzioni, è necessario creare o collegare un account di archiviazione di Azure per utilizzo generico che supporta l'archiviazione BLOB, code e tabelle. Per altre informazioni, vedere Considerazioni sull'archiviazione per Funzioni di Azure.

Identificare le considerazioni sulla progettazione della rete

Le opzioni di rete consentono all'app Funzioni di limitare l'accesso o di accedere alle risorse senza usare indirizzi instradabili tramite Internet. I piani di hosting offrono diversi livelli di isolamento della rete. Scegliere l'opzione più adatta ai requisiti di isolamento della rete. Per altre informazioni, vedere Opzioni di rete di Funzioni di Azure.

Produzione

Per preparare l'applicazione per la produzione, assicurarsi di ridistribuire facilmente il piano di hosting e applicare regole di scalabilità orizzontale.

Automatizzare il provisioning del piano di hosting

Con l'infrastruttura come codice, è possibile automatizzare il provisioning dell'infrastruttura. Il provisioning automatico offre maggiore resilienza durante le emergenze e maggiore agilità per ridistribuire rapidamente l'infrastruttura in base alle esigenze.

Per altre informazioni sul provisioning automatizzato, vedere:

Configurare le opzioni di scalabilità orizzontale

La scalabilità automatica fornisce la giusta quantità di risorse in esecuzione per gestire il carico dell'applicazione. La scalabilità automatica aggiunge risorse per gestire gli aumenti del carico e consente di risparmiare denaro rimuovendo le risorse inattive.

Per altre informazioni sulle opzioni di scalabilità automatica, vedere:

Optimization

Quando l'applicazione è in produzione, assicurarsi che:

  • Il piano di hosting può essere ridimensionato per soddisfare le esigenze dell'applicazione.
  • È disponibile un piano per la continuità aziendale, la disponibilità e il ripristino di emergenza.
  • È possibile monitorare l'integrità dell'hosting e dell'applicazione e ricevere avvisi.

Implementare i requisiti di disponibilità

Funzioni di Azure eseguito in un'area specifica. Per ottenere una maggiore disponibilità, è possibile distribuire la stessa app per le funzioni in più aree. In più aree, Le funzioni possono essere eseguite nel modello di disponibilità attivo-attivo o attivo-passivo .

Per altre informazioni sulla disponibilità e sul ripristino di emergenza di Funzioni di Azure, vedere:

Monitoraggio della registrazione, del monitoraggio delle applicazioni e degli avvisi

Application Insights e i log in Monitoraggio di Azure raccolgono automaticamente i dati di log, prestazioni e errori e rilevano anomalie delle prestazioni. Monitoraggio di Azure include potenti strumenti di analisi per diagnosticare i problemi e comprendere l'uso delle funzioni. Application Insights consente di migliorare continuamente le prestazioni e l'usabilità.

Per altre informazioni sul monitoraggio e l'analisi delle prestazioni Funzioni di Azure, vedere:

Passaggi successivi