Trigger di Pub/Sub (1ª generazione)
In Cloud Functions, un trigger Pub/Sub consente di chiamare una funzione in risposta ai messaggi Pub/Sub. Quando specifichi un trigger Pub/Sub per una funzione, specifichi anche un argomento Pub/Sub. La funzione verrà chiamata ogni volta che un messaggio viene pubblicato nell'argomento specificato.
Per utilizzare un trigger Pub/Sub, una funzione deve essere implementata come funzione basata su eventi:
Se utilizzi una funzione CloudEvent, i dati degli eventi Pub/Sub vengono passati alla tua funzione nel formato CloudEvents e il payload dei dati CloudEvent è di tipo
MessagePublishedData
.Se utilizzi una funzione in background, il payload dei dati degli eventi Pub/Sub viene passato direttamente alla tua funzione nel formato
PubsubMessage
.
Il repository Eventi Google contiene risorse aggiuntive per lavorare con i dati sugli eventi.
Deployment
Puoi specificare un trigger Pub/Sub quando esegui il deployment di una funzione. Consulta Eseguire il deployment di una funzione Cloud Functions per istruzioni generali su come eseguire il deployment di una funzione e questa sezione per ulteriori informazioni specifiche sulla configurazione dei trigger Pub/Sub durante il deployment.
gcloud
Se stai eseguendo il deployment utilizzando gcloud CLI, i flag mostrati qui sono utilizzati per configurare i trigger Pub/Sub:
gcloud functions deploy YOUR_FUNCTION_NAME \ --trigger-topic=YOUR_PUBSUB_TOPIC \ [--retry] \ ...
- Il flag
--trigger-topic
specifica l'argomento Pub/Sub monitorato dal trigger. I messaggi pubblicati in questo argomento attivano le chiamate alla funzione. - Il flag
--retry
controlla se le chiamate di funzione non riuscite vengono ritentate automaticamente. Per ulteriori informazioni, consulta Ripetere le funzioni basate su eventi.
Eventi Pub/Sub legacy
Le funzioni legacy in Cloud Functions (1ª generazione.) utilizzano un tipo di evento diverso per i trigger di Pub/Sub:
gcloud functions deploy YOUR_FUNCTION_NAME \ --trigger-event=providers/cloud.pubsub/eventTypes/topic.publish \ --trigger-resource=YOUR_PUBSUB_TOPIC \ ...
Questo tipo di evento è supportato per le funzioni legacy che già utilizzano questi eventi. Tuttavia, ti consigliamo di utilizzare il flag --trigger-topic
perché
il tipo di evento precedente potrebbe essere rimosso in futuro.
Console
Se esegui il deployment utilizzando la console Google Cloud, puoi configurare un trigger Pub/Sub nella sezione Trigger:
- Nel campo Tipo di trigger, seleziona Cloud Pub/Sub.
- Nel campo Seleziona un argomento Cloud Pub/Sub, seleziona un argomento da monitorare oppure seleziona Crea un argomento per aprire una finestra in cui creare un nuovo argomento. Quando un messaggio viene pubblicato nell'argomento della funzione, viene attivata una chiamata alla funzione.
- Seleziona o deseleziona la casella di controllo Riprova in caso di errore per stabilire se le chiamate di funzione non riuscite vengono tentate di nuovo automaticamente. Per saperne di più, consulta Ripetere le funzioni basate su eventi.
Passaggi successivi
- Scopri come scrivere funzioni basate su eventi.
- Scopri come eseguire il deployment di una funzione Cloud Functions.
- Vedi il tutorial di Pub/Sub per un esempio di scrittura, deployment e chiamata di una funzione con un trigger Pub/Sub.