Le Azure Function sono l'implementazione Microsoft delle cosiddette Function as a Service (FaaS) e permettono di definire funzioni indipendenti attivabili dai più diversi trigger che vanno da una chiamata HTTP fino all'elaborazione di messaggi in coda.
Esse si poggiano sulla stessa infrastruttura degli App Service perciò godono di molte caratteristiche che già troviamo per l'hosting delle nostre app, come gli app settings, il service plan e tante altre, tra le quali anche gli slot. Con essi possiamo definire e ospitare più versioni nelle nostre function con l'obbiettivo in genere di testarle e di portarle poi in produzione.
Per usufruire di questa funzionalità dobbiamo prima di tutto abilitare il supporto con l'apposito switch che troviamo nei settings della function.
![](https://www.cloudnativeitalia.com/script/images/141.jpg)
Successivamente possiamo premere sul nodo Slots e creare uno o più deployment.
![](https://www.cloudnativeitalia.com/script/images/141_2.jpg)
Una volta creato lo slot possiamo espandere l'albero di sinistra ed entrare nelle rispettive funzioni, come se fossero due function app indipendenti.
![](https://www.cloudnativeitalia.com/script/images/141_3.jpg)
Possiamo quindi definire le funzioni direttamente dal portale o effettuare deployment con i vari strumenti che abbiamo a disposizione, ed impostare tutte le impostazioni ad eccezione di quelle che riguardano il service plan da usare (che il è medesimo).
Gli slot che creiamo, come per le web app, sono raggiungibili via HTTP attraverso lo stesso nome ma con il suffisso -nomeSlot. Per quanto riguarda gli altri trigger, invece, è bene notare che le funzioni, anche se non dello slot principale, monitorano comunque le code. E' bene quindi usare nei trigger e nei binding i segnaposti marcati con il % (percentuale) per poter fare riferimento ad una chiave delle impostazioni. In questo modo possiamo usare code o database diversi a seconda dello slot che stiamo usando.
In qualsiasi momento possiamo poi procedere allo swap premendo l'anonimo pulsante disponibile nella sezione overview.
![](https://www.cloudnativeitalia.com/script/images/141_4.jpg)
In modo molto simile alle web app, possiamo indicare sorgente e destinazione, la facoltà di attivare la preview ed infine ottenere un'anteprima delle impostazioni che verranno scambiate.
Commenti
Per inserire un commento, devi avere un account.
Fai il login e torna a questa pagina, oppure registrati alla nostra community.
Approfondimenti
Le novità di Angular: i miglioramenti alla CLI
Eseguire una ricerca avanzata per recuperare le issue di GitHub
Utilizzare il metodo CountBy di LINQ per semplificare raggruppamenti e i conteggi
Migliorare la scalabilità delle Azure Function con il Flex Consumption
Utilizzare un numero per gestire la concorrenza ottimistica con SQL Server ed Entity Framework
Gestire la cancellazione di una richiesta in streaming da Blazor
Creare una libreria CSS universale: Cards
Autenticarsi in modo sicuro su Azure tramite GitHub Actions
Gestire il colore CSS con HWB
Utilizzare Copilot con Azure Cosmos DB
Supportare la sessione affinity di Azure App Service con Application Gateway
Disabilitare automaticamente un workflow di GitHub (parte 2)