Che cos'è Funzioni di Azure?
- 7 minuti
Segui il team Web di Tailspin Space Game mentre discutono come offrire al meglio nuovi requisiti di marketing basati sulla gestione. Il team deve integrare alcune tecnologie serverless, in particolare Funzioni di Azure, nel processo DevOps.
Puoi metterti in contatto con il team.
Nuovi requisiti
Irwin: Grazie per l'incontro su tale breve preavviso. Le cose si stanno scaldando e il team di marketing ha fatto alcune promesse che potrebbero complicare le cose per tutti noi. A loro piace molto il nostro sito. Pensano che il tabellone punteggi possa essere usato per promuovere il gioco mentre andiamo verso il lancio finale e oltre. Vogliono ampliare significativamente oltre quello che avevamo originariamente pianificato.
Mara: È fantastico, vero? Siamo su Azure, quindi possiamo espandere il servizio quanto necessario.
Irwin: Vogliono solo consentire a chiunque di integrare i dati del tabellone punteggi nelle proprie applicazioni. Pensano che sarebbe davvero bello avere le stesse opzioni del tabellone punteggi sul nostro sito, nel gioco, nei siti di recensione di gioco, e anche su blog esterni e siti personali. Una sfida è che il team del motore di gioco possiede attualmente il database di produzione da cui estraiamo i dati della classifica. Pensano che debbano creare e possedere l'API in futuro.
Andy: Mara, hai qualche pensiero?
Mara: Sono sicuro che possiamo venire con qualcosa. Ecco le mie note:
- È necessario offrire rapidamente, quindi è necessario trovare una soluzione in cui è possibile usare il codice e le competenze.
- È necessario effettuare il refactoring di una piccola parte di funzionalità in un servizio indipendente.
- È necessario ridurre al minimo il sovraccarico amministrativo nell'ambiente di produzione.
- Dobbiamo avere una vasta scala senza impegnarci enormemente.
La squadra annuisce in segno di accordo.
Funziona sul mio computer
La riunione si interrompe. La mattina successiva, Andy entra con entusiasmo nell'ufficio di Mara per una chiacchierata improvvisata.
Andy: Ho capito! Ho trovato una soluzione che soddisfi tutti i requisiti per l'API del tabellone punteggi. Si tratta di un'offerta serverless denominata Funzioni di Azure.
Mara: Fantastico! Quanto tempo prima di avere qualcosa che possiamo mostrare?
Andy: Ho già completato qualcosa. Ho fatto il fork del nostro repository GitHub ed eseguito il refactoring del codice del tabellone dei punteggi in un nuovo progetto di Azure Functions. Espone i dati del tabellone punteggi tramite una semplice richiesta HTTP GET. Ho anche aggiornato il sito Web per usare tale endpoint quando si richiede la classifica e chiunque altro può fare lo stesso.
Mara: Questo sembra esattamente quello di cui abbiamo bisogno. Posso aiutare a estendere la pipeline CI/CD esistente per supportare la compilazione e la distribuzione, come facciamo per il progetto del sito principale.
Annotazioni
Questo modulo non è incentrato su come connettere l'app a Funzioni di Azure. Se si è interessati, esaminare il codice sorgente. Il codice usa il runtime di Funzioni di Azure per C# per leggere i dati della classifica da Funzioni di Azure.
Che cos'è Funzioni di Azure?
Funzioni di Azure è un'offerta specifica all'interno del più ampio spettro di tecnologie di elaborazione serverless di Azure. Consente agli sviluppatori di creare facilmente funzioni semplici in un ambiente senza serverless senza stato. Le funzioni possono essere attivate usando vari metodi, ad esempio le richieste HTTP, le modifiche ai dati nell'archiviazione e la ricezione di un messaggio da una coda. Per altre informazioni sulle associazioni di trigger, vedere Concetti relativi ai trigger e alle associazioni di Funzioni di Azure.
Il team di Tailspin ha selezionato Funzioni di Azure per questo scenario perché soddisfa tutte le proprie esigenze:
- È necessario offrire rapidamente, quindi è necessario trovare una soluzione in cui è possibile usare il codice e le competenze.
- È possibile compilare rapidamente la soluzione come applicazione ASP.NET Core applicando il codice già disponibile.
- È necessario effettuare il refactoring di una piccola parte di funzionalità in un servizio indipendente.
- È possibile fornire una funzione indipendente senza altre aree di superficie dell'applicazione di cui preoccuparsi.
- È necessario ridurre al minimo il sovraccarico amministrativo nell'ambiente di produzione.
- Funzioni di Azure elimina la necessità di preoccuparsi degli ambienti di hosting.
- Dobbiamo avere una vasta scala senza impegnarci enormemente.
- Le tecnologie serverless hanno scalabilità virtualmente illimitata che può aumentare e ridurre automaticamente le prestazioni rispetto alle macchine virtuali o ai servizi app.
Funzioni di Azure e altre tecnologie serverless non sono sempre la soluzione ideale per ogni soluzione. Più avanti, scopri dove trovare le risorse per aiutarti a selezionare la tecnologia più adatta per il lavoro.