Reach

Grow

Manage

Automate

Reach

Grow

Manage

Automate

Come creare un consumatore webhook di base con Azure Functions

Nick Zimmerman

20 dic 2017

Email

1 min read

Come creare un consumatore webhook di base con Azure Functions

Nick Zimmerman

20 dic 2017

Email

1 min read

Come creare un consumatore webhook di base con Azure Functions

A novembre, ho tenuto una conferenza a Live! 360 su come creare un semplice consumatore webhook utilizzando Azure Functions. Questo post del blog riassumerà quella conferenza e distillerà le informazioni in modo che tu possa comprendere i concetti di base delle Azure Functions.

Interfaccia Webhook di Azure Functions

A novembre, ho tenuto una conferenza a Live! 360 su come creare un consumatore di webhook di base utilizzando le Azure Functions. Questo post sul blog ripercorrerà quella conferenza e distillerà i contenuti in modo che tu possa comprendere le basi di Azure Function, e estendere la soluzione del framework trovata su Github.

Cosa sono i Webhooks?

I Webhooks sono piccole cose fantastiche fornite da molti servizi popolari, tra cui SparkPos

t, Slack, Visual Studio Team Services, Office 365, Facebook, PayPal e Salesforce. I Webhooks inviano dati basati su un evento a un endpoint che definisci.

I Webhooks sono piccole cose fantastiche fornite da molti servizi popolari, tra cui SparkPos

t, Slack, Visual Studio Team Services, Office 365, Facebook, PayPal e Salesforce. I Webhooks inviano dati basati su un evento a un endpoint che definisci.

I Webhooks sono piccole cose fantastiche fornite da molti servizi popolari, tra cui SparkPos

t, Slack, Visual Studio Team Services, Office 365, Facebook, PayPal e Salesforce. I Webhooks inviano dati basati su un evento a un endpoint che definisci.

Perché le funzioni serverless?

Le funzioni serverless sono un'ottima innovazione per aiutare a distribuire rapidamente soluzioni riducendo al contempo il carico per le organizzazioni. La mancanza di hardware da mantenere è un grande vantaggio, e le funzioni serverless sono in grado di gestire flussi di traffico imprevedibili. Sono facili da distribuire e aggiornare, quindi puoi iniziare a funzionare rapidamente.

Sinergia!

Combinare webhook e funzioni serverless rende molto facile creare ecosistemi ricchi per l'automazione o l'interazione con l'utente. Essere in grado di avvalersi degli eventi e dei dati generati da tutti questi sistemi disparati elimina la necessità di middleware complicati rendendo al contempo molto facile incorporare codice ed eventi personalizzati.

Azure Functions Basics

Azure Functions possono essere create attraverso la Azure Console o Visual Studio. Raccomando di provare entrambi per familiarizzare con le esperienze. Una delle cose belle della creazione di qualcosa nella Azure Console è che puoi scaricare la risultante Azure Function come file di soluzione di Visual Studio. Visual Studio è lo stesso IDE familiare e potente che conosci e ami.

Ci sono vantaggi in entrambi i metodi. La console di Azure Function ti dà accesso diretto per controllare i parametri dell'operazione della funzione da risorse disponibili a limiti di utilizzo mensile per il controllo dei costi. Tutte queste opzioni possono essere impostate e manipolate da Visual Studio tramite il file host.json e le variabili d'ambiente.

Creare un Basic Webhook Consumer

Step 1

Crea una nuova soluzione di Visual Studio e aggiungi un nuovo progetto a quella soluzione.

Visual studio editor


Step 2

Fai clic con il tasto destro sul nodo del progetto e aggiungi un nuovo elemento. Scegli Azure Function.


Visual studio editor


Step 3

Ora hai un progetto Visual Studio molto familiare. Dovresti avere un modello per una funzione Azure di base C#. È il momento di costruire del codice per utilizzare il tuo webhook.

Visual studio editor


Step 4

Effettua il debug localmente. Esatto, puoi effettuare il debug di questo elemento localmente con tutti i familiari strumenti di debug e introspezione di Visual Studio. Fai attenzione alla console di debug, poiché contiene molte informazioni preziose su ogni chiamata che effettui alla tua funzione durante i test locali.

Debugging console


Step 5

Pubblica la funzione Azure. Fai clic con il tasto destro sul nodo del progetto e seleziona Pubblica. Scegli Azure Function e crea nuovo. Nota che potresti anche aggiornare una funzione esistente. La funzione apparirà ora nella tua console di Azure.

Visual studio editor

Potenziali Pitfalls

Il problema più comune che colpisce le persone quando lavorano con il consumo di webhook e le funzioni serverless è che la funzione dura troppo a lungo. Questo causa che la funzione diventi molto costosa o fallisca completamente perché il POST del webhook scade. Ci sono alcune cose che puoi fare per gestire questi problemi.

I consumatori di webhook dovrebbero essere eseguiti in modo asincrono. I dati dovrebbero essere ingeriti il più rapidamente possibile e poi elaborati. L'errore comune di progettazione è cercare di elaborare i dati in tempo reale mentre arrivano. Questo funziona fintanto che i dati hanno una dimensione costante e piccola, ma se la dimensione dei dati può aumentare o essere incoerente, allora è meglio assicurarsi che i dati vengano ricevuti e la richiesta HTTP venga risolta affinché non si verifichino timeout.

Un'altra cosa che può aiutare a mitigare i processi di lunga durata è memorizzare i dati inviati e utilizzare la funzione serverless per avviare un processo containerizzato usando qualcosa come Azure Container Services (AKS) per gestire le parti di lunga durata. Usando questo design, la funzione serverless dovrebbe avviare e dimenticare il container, lasciando che il container pubblichi i suoi risultati o su un log o su un altro servizio di notifica a tua scelta. Questo mantiene la funzione serverless il più breve possibile pur consentendo che avvengano processi complicati.

Accendiamo questa candela

Ecco qua. Ora puoi andare avanti e creare il tuo ricco ecosistema usando funzioni serverless e webhook. Di seguito è riportato un elenco di altre risorse per aiutarti ad approfondire le Azure Functions.

-Nick Zimmerman

ps – di seguito sono riportate alcune risorse aggiuntive sulle Azure Functions che potresti trovare interessanti – divertiti!

Connettiamoci con un esperto di Bird.
Scopri tutta la potenza del Bird in 30 minuti.

Inviando, accetti che Bird possa contattarti riguardo ai nostri prodotti e servizi.

Puoi annullare l'iscrizione in qualsiasi momento. Consulta la Informativa sulla Privacy di Bird per i dettagli sul trattamento dei dati.

Azienda

Newsletter

Rimani aggiornato con Bird attraverso aggiornamenti settimanali nella tua inbox.

Connettiamoci con un esperto di Bird.
Scopri tutta la potenza del Bird in 30 minuti.

Inviando, accetti che Bird possa contattarti riguardo ai nostri prodotti e servizi.

Puoi annullare l'iscrizione in qualsiasi momento. Consulta la Informativa sulla Privacy di Bird per i dettagli sul trattamento dei dati.

Azienda

Newsletter

Rimani aggiornato con Bird attraverso aggiornamenti settimanali nella tua inbox.

Connettiamoci con un esperto di Bird.
Scopri tutta la potenza del Bird in 30 minuti.

Inviando, accetti che Bird possa contattarti riguardo ai nostri prodotti e servizi.

Puoi annullare l'iscrizione in qualsiasi momento. Consulta la Informativa sulla Privacy di Bird per i dettagli sul trattamento dei dati.

R

Raggiungi

G

Grow

M

Manage

A

Automate

Azienda

Newsletter

Rimani aggiornato con Bird attraverso aggiornamenti settimanali nella tua inbox.