Gli abbonati potrebbero non essere in grado di gestire i messaggi per una serie di motivi. Ad esempio, potrebbero verificarsi problemi temporanei durante il recupero dei dati necessari per elaborare un messaggio. In alternativa, un messaggio potrebbe essere in un formato inatteso per l'abbonato.
Questa pagina spiega come gestire questi errori di elaborazione utilizzando un criterio di ripetizione dei tentativi di abbonamento o inoltrando i messaggi non recapitati a un argomento messaggi non recapitabili (noto anche come coda dead letter).
Tieni presente che queste funzionalità non sono supportate da Dataflow. Per ulteriori informazioni, consulta la sezione Funzionalità Pub/Sub non supportate della documentazione di Dataflow.
Criterio di ripetizione della sottoscrizione
Se Pub/Sub tenta di consegnare un messaggio, ma il sottoscrittore non può confermarlo, Pub/Sub tenta automaticamente di inviarlo di nuovo. Questo tentativo di riconsegna è noto come criterio di ripetizione della sottoscrizione. Questa non è una funzionalità che puoi attivare o disattivare. Tuttavia, puoi scegliere il tipo di criterio di ripetizione che vuoi utilizzare.
Quando crei e configuri la sottoscrizione per la prima volta, puoi scegliere di utilizzare uno dei seguenti criteri per i nuovi tentativi: nuovo tentativo di consegna immediato o backoff esponenziale. Per impostazione predefinita, gli abbonamenti utilizzano la riconsegna immediata.
Riconsegna immediata
Per impostazione predefinita, Pub/Sub tenta di inviare nuovamente il messaggio immediatamente (e potenzialmente allo stesso client sottoscrittore). Tuttavia, se le condizioni che hanno impedito la conferma di ricezione del messaggio non sono cambiate, la nuova consegna immediata può causare problemi. In questo caso, è possibile che Pub/Sub invii nuovamente più messaggi che non possono essere confermati.
Per risolvere i problemi di nuova consegna immediata, Pub/Sub consente di configurare un criterio di backoff esponenziale.
Backoff esponenziale
Il backoff esponenziale consente di aggiungere ritardi progressivamente più lunghi tra i tentativi. Dopo il primo errore di recapito, Pub/Sub attende un tempo di backoff minimo prima di riprovare. Per ogni errore consecutivo del messaggio, viene aggiunto più tempo al ritardo, fino a un ritardo massimo (0 e 600 secondi).
Gli intervalli di ritardo massimo e minimo non sono fissi e devono essere configurati in base ai fattori locali dell'applicazione.
Tieni presente le seguenti considerazioni sul backoff esponenziale:
- Il backoff esponenziale viene attivato in base alle seguenti azioni:
- Quando viene ricevuta una conferma negativa.
- Quando scade la scadenza di conferma di un messaggio.
- Il backoff esponenziale viene applicato solo per messaggio, anziché a tutti i messaggi di una sottoscrizione (globale).
- Durante l'utilizzo del backoff esponenziale, Pub/Sub continua a inviare altri messaggi, anche se i messaggi precedenti hanno ricevuto riconoscimenti negativi (a meno che tu non stia utilizzando la distribuzione ordinata dei messaggi).
Utilizza il criterio di ripetizione per ritardare la consegna e l'elaborazione di un sottoinsieme di messaggi per far fronte a un'incapacità temporanea di elaborare alcuni messaggi al momento della consegna. La funzionalità viene applicata in base al massimo impegno e ogni messaggio viene valutato separatamente per la policy di ripetizione.
Non è consigliabile utilizzare questa funzionalità per introdurre ritardi intenzionali nella consegna dei messaggi. Se invii un riconoscimento negativo (NACK) per un numero elevato di messaggi in un abbonamento configurato con un criterio di ripetizione, è possibile che alcuni di questi messaggi vengano recapitati con un backoff inferiore o nullo. Pub/Sub potrebbe anche rallentare la distribuzione di tutti i messaggi se inviate un NACK per un numero elevato di messaggi.
Se devi pianificare le consegne, valuta l'utilizzo di Cloud Tasks.
Configurare il backoff esponenziale
Console
Quando crei un nuovo abbonamento, puoi configurare un criterio di ripetizione con backoff esponenziale seguendo questi passaggi:
Nella Google Cloud console, vai alla pagina Sottoscrizioni Pub/Sub.
Fai clic su Crea sottoscrizione.
Nel campo ID sottoscrizione, inserisci un nome.
Per informazioni su come denominare un abbonamento, consulta le linee guida per assegnare un nome a un argomento o a un abbonamento.
Scegli o crea un argomento dal menu a discesa.
La sottoscrizione riceve i messaggi dall'argomento.
Seleziona un tipo di pubblicazione.
In Criteri di ripetizione, seleziona Esegui nuovo tentativo dopo ritardo backoff esponenziale.
Inserisci un backoff minimo e un backoff massimo compresi tra 0 e 600 secondi.
I valori predefiniti sono 10 secondi per il backoff minimo e 600 secondi per il backoff massimo.
Fai clic su Crea.
gcloud
Per creare una nuova sottoscrizione con un criterio per i nuovi tentativi con backoff esponenziale, esegui il comando gcloud pubsub create
con i flag mostrati di seguito:
gcloud pubsub subscriptions create SUBSCRIPTION_ID \ --topic=TOPIC_ID \ --min-retry-delay=MIN_RETRY_DELAY \ --max-retry-delay=MAX_RETRY_DELAY
Argomento messaggi non recapitabili
Se il servizio Pub/Sub tenta di consegnare un messaggio, ma il sottoscrittore non può confermarlo, Pub/Sub può inoltrare il messaggio non consegnabile a un argomento messaggi non recapitabili.
Come funzionano gli argomenti messaggi non recapitabili con Pub/Sub
Un argomento messaggi non recapitabili è una proprietà dell'abbonamento, non una proprietà dell'argomento. Ciò significa che devi impostare un argomento messaggi non recapitabili quando crei una sottoscrizione, non quando crei un argomento.
Se crei un argomento messaggi non recapitabili, puoi impostare le seguenti proprietà di sottoscrizione:
Numero massimo di tentativi di invio: un valore numerico che indica il numero di tentativi di invio che Pub/Sub esegue per un messaggio specifico. Se il client sottoscrittore non può confermare la ricezione del messaggio entro il numero configurato di tentativi di consegna, il messaggio viene inoltrato a un argomento messaggi non recapitabili.
- Valore predefinito = 5
- Valore massimo = 100
- Valore minimo = 5
Progetto con l'argomento messaggi non recapitabili: se l'argomento messaggi non recapitabili si trova in un progetto diverso dall'abbonamento, devi specificare il progetto con l'argomento messaggi non recapitabili. Imposta l'argomento messaggi non recapitabili su un argomento diverso da quello a cui è collegato l'abbonamento.
Come vengono calcolati i tentativi di consegna massimi
Pub/Sub conteggia i tentativi di consegna solo quando un argomento messaggi non recapitabili è configurato correttamente e include le autorizzazioni IAM corrette.
Il numero massimo di tentativi di consegna è approssimativo perché Pub/Sub inoltra i messaggi non recapitabili con il criterio "best effort".
Il numero monitorato di tentativi di consegna per un messaggio potrebbe anche essere reimpostato su zero, soprattutto per un abbonamento pull con abbonati inattivi. Di conseguenza, i messaggi potrebbero essere recapitati al client abbonato più volte rispetto al numero massimo di tentativi di consegna configurato.
Configurare un argomento messaggi non recapitabili
Per configurare un argomento messaggi non recapitabili, l'argomento di origine deve prima avere una sottoscrizione. Puoi specificare un argomento messaggi non recapitabili quando crei l'abbonamento oppure puoi aggiornare un abbonamento esistente in modo che abbia unargomento messaggi non recapitabilir.
Di seguito è riportato il flusso di lavoro per l'attivazione della gestione dei messaggi non recapitabili per un abbonamento.
Crea l'argomento messaggi non recapitabili. Questo argomento è separato dall'argomento di origine.
Imposta l'argomento messaggi non recapitabili nella sottoscrizione per l'argomento di origine.
Per evitare di perdere i messaggi dall'argomento messaggi non recapitabili, collega almeno un altro abbonamento all'argomento messaggi non recapitabili. La sottoscrizione secondaria riceve i messaggi dall'argomento messaggi non recapitabili.
Concedi i ruoli di publisher e sottoscrittore al account di servizio Pub/Sub. Per maggiori informazioni, vedi Concedere le autorizzazioni di inoltro.
Impostare un argomento messaggi non recapitabili in un nuovo abbonamento
Puoi creare una sottoscrizione e impostare un argomento messaggi non recapitabili utilizzando la consoleGoogle Cloud , Google Cloud CLI, le librerie client o l'API Pub/Sub.
Console
Per creare una sottoscrizione e impostare un argomento messaggi non recapitabili, completa i seguenti passaggi:
Nella console Google Cloud , vai alla pagina Abbonamenti.
Fai clic su Crea sottoscrizione.
Inserisci l'ID abbonamento.
Scegli o crea un argomento dal menu a discesa.
La sottoscrizione riceve i messaggi dall'argomento.
Nella sezione Messaggi non recapitabili, seleziona Abilita messaggi non recapitabili.
Scegli o crea un argomento messaggi non recapitabili dal menu a discesa.
Se l'argomento messaggi non recapitabili scelto non ha un abbonamento, il sistema ti chiede di crearne uno.
Nel campo Numero massimo di tentativi di consegna, specifica un numero intero compreso tra 5 e 100.
Fai clic su Crea.
Il riquadro dei dettagli mostra un elenco di possibili attività. Se uno degli elementi mostra un'icona di errore
, fai clic sull'elemento di azione per risolvere il problema.
gcloud
Per creare una sottoscrizione e impostare un argomento messaggi non recapitabili, utilizza il comando
gcloud pubsub subscriptions create
:
gcloud pubsub subscriptions create subscription-id \ --topic=topic-id \ --dead-letter-topic=dead-letter-topic-name \ [--max-delivery-attempts=max-delivery-attempts] \ [--dead-letter-topic-project=dead-letter-topic-project]
C++
Prima di provare questo esempio, segui le istruzioni di configurazione di C++ nella guida rapida all'utilizzo delle librerie client. Per ulteriori informazioni, consulta la documentazione di riferimento dell'API Pub/Sub C++.
C#
Prima di provare questo esempio, segui le istruzioni di configurazione di C# nella guida rapida all'utilizzo delle librerie client. Per ulteriori informazioni, consulta la documentazione di riferimento dell'API Pub/Sub C#.
Vai
Prima di provare questo esempio, segui le istruzioni di configurazione di Go nella guida rapida all'utilizzo delle librerie client. Per saperne di più, consulta la documentazione di riferimento dell'API Pub/Sub Go.
Java
Prima di provare questo esempio, segui le istruzioni di configurazione di Java nella Guida rapida all'utilizzo delle librerie client. Per ulteriori informazioni, consulta la documentazione di riferimento dell'API Java di Pub/Sub.
Node.js
Prima di provare questo esempio, segui le istruzioni di configurazione di Node.js nella Guida rapida all'utilizzo delle librerie client. Per saperne di più, consulta la documentazione di riferimento dell'API Pub/Sub Node.js.
Node.js
Prima di provare questo esempio, segui le istruzioni di configurazione di Node.js nella Guida rapida all'utilizzo delle librerie client. Per saperne di più, consulta la documentazione di riferimento dell'API Pub/Sub Node.js.
PHP
Prima di provare questo esempio, segui le istruzioni di configurazione di PHP nella guida rapida all'utilizzo delle librerie client. Per saperne di più, consulta la documentazione di riferimento dell'API Pub/Sub PHP.
Python
Prima di provare questo esempio, segui le istruzioni di configurazione di Python nella guida rapida all'utilizzo delle librerie client. Per saperne di più, consulta la documentazione di riferimento dell'API Pub/Sub Python.
Ruby
Prima di provare questo esempio, segui le istruzioni di configurazione di Ruby nella guida rapida all'utilizzo delle librerie client. Per saperne di più, consulta la documentazione di riferimento dell'API Pub/Sub Ruby.
Ruby
Prima di provare questo esempio, segui le istruzioni di configurazione di Ruby nella guida rapida di Pub/Sub per l'utilizzo delle librerie client. Per saperne di più, consulta la documentazione di riferimento dell'API Pub/Sub Ruby.
Per eseguire l'autenticazione in Pub/Sub, configura le Credenziali predefinite dell'applicazione. Per ulteriori informazioni, vedi Configura l'autenticazione per un ambiente di sviluppo locale.
Impostare un argomento messaggi non recapitabili per un abbonamento esistente
Puoi aggiornare una sottoscrizione e impostare un argomento messaggi non recapitabili utilizzando la consoleGoogle Cloud , Google Cloud CLI, le librerie client o l'API Pub/Sub.
Console
Per aggiornare una sottoscrizione e impostare un argomento messaggi non recapitabili, completa i seguenti passaggi.
Nella console Google Cloud , vai alla pagina Abbonamenti.
Accanto all'abbonamento da aggiornare, fai clic su Altre azionimore_vert.
Nel menu contestuale, seleziona Modifica.
Nella sezione Messaggi non recapitabili, seleziona Abilita messaggi non recapitabili.
Scegli o crea un argomento dal menu a discesa.
Se l'argomento scelto non ha un abbonamento, il sistema ti chiede di crearne uno.
Nel campo Numero massimo di tentativi di consegna, specifica un numero intero compreso tra 5 e 100.
Fai clic su Aggiorna.
Il riquadro dei dettagli mostra un elenco di possibili attività. Se uno degli elementi mostra un'icona di errore
, fai clic sull'elemento di azione per risolvere il problema.
gcloud
Per aggiornare un abbonamento e impostare un argomento messaggi non recapitabili, utilizza il
comando
gcloud pubsub subscriptions update
:
gcloud pubsub subscriptions update subscription-id \ --dead-letter-topic=dead-letter-topic-name \ [--max-delivery-attempts=max-delivery-attempts] \ [--dead-letter-topic-project=dead-letter-topic-project]
C++
Prima di provare questo esempio, segui le istruzioni di configurazione di C++ nella guida rapida all'utilizzo delle librerie client. Per ulteriori informazioni, consulta la documentazione di riferimento dell'API Pub/Sub C++.
C#
Prima di provare questo esempio, segui le istruzioni di configurazione di C# nella guida rapida all'utilizzo delle librerie client. Per ulteriori informazioni, consulta la documentazione di riferimento dell'API Pub/Sub C#.
Vai
Prima di provare questo esempio, segui le istruzioni di configurazione di Go nella guida rapida all'utilizzo delle librerie client. Per saperne di più, consulta la documentazione di riferimento dell'API Pub/Sub Go.
Java
Prima di provare questo esempio, segui le istruzioni di configurazione di Java nella Guida rapida all'utilizzo delle librerie client. Per saperne di più, consulta la documentazione di riferimento dell'API Java di Pub/Sub.
Node.js
Prima di provare questo esempio, segui le istruzioni di configurazione di Node.js nella Guida rapida all'utilizzo delle librerie client. Per saperne di più, consulta la documentazione di riferimento dell'API Pub/Sub Node.js.
PHP
Prima di provare questo esempio, segui le istruzioni di configurazione di PHP nella guida rapida all'utilizzo delle librerie client. Per saperne di più, consulta la documentazione di riferimento dell'API Pub/Sub PHP.
Python
Prima di provare questo esempio, segui le istruzioni di configurazione di Python nella guida rapida all'utilizzo delle librerie client. Per saperne di più, consulta la documentazione di riferimento dell'API Pub/Sub Python.
Ruby
Prima di provare questo esempio, segui le istruzioni di configurazione di Ruby nella guida rapida all'utilizzo delle librerie client. Per saperne di più, consulta la documentazione di riferimento dell'API Pub/Sub Ruby.
Ruby
Prima di provare questo esempio, segui le istruzioni di configurazione di Ruby nella guida rapida di Pub/Sub per l'utilizzo delle librerie client. Per saperne di più, consulta la documentazione di riferimento dell'API Pub/Sub Ruby.
Per eseguire l'autenticazione in Pub/Sub, configura le Credenziali predefinite dell'applicazione. Per ulteriori informazioni, vedi Configura l'autenticazione per un ambiente di sviluppo locale.
Concedi ruoli IAM per utilizzare gli argomenti messaggi non recapitabili
Per inoltrare i messaggi non recapitabili a un argomento messaggi non recapitabili, Pub/Sub deve disporre dell'autorizzazione per eseguire le seguenti operazioni:
- Pubblicare messaggi nell'argomento.
- Riconosci i messaggi, che vengono rimossi dalla sottoscrizione.
Pub/Sub crea e gestisce un account di servizio per ogni progetto:
service-project-number@gcp-sa-pubsub.iam.gserviceaccount.com
.
Puoi concedere le autorizzazioni di inoltro assegnando
a questo account di servizio i ruoli di publisher e
subscriber.
Console
Per concedere l'autorizzazione Pub/Sub per pubblicare messaggi in un argomento messaggi non recapitabilir, completa i seguenti passaggi:
Nella console Google Cloud , vai alla pagina Abbonamenti.
Fai clic sul nome dell'abbonamento con l'argomento messaggi non recapitabili.
Fai clic sulla scheda Dead lettering.
Per assegnare un ruolo di publisher, fai clic su Concedi ruolo di publisher. Se il ruolo di publisher viene assegnato correttamente, viene visualizzato un segno di spunta blu
.Per assegnare un ruolo di abbonato, fai clic su Concedi ruolo di abbonato. Se il ruolo di publisher viene assegnato correttamente, viene visualizzato un segno di spunta blu
.
gcloud
Per concedere l'autorizzazione a Pub/Sub di pubblicare messaggi in un argomento messaggi non recapitabilir, esegui questo comando:
PUBSUB_SERVICE_ACCOUNT="service-project-number@gcp-sa-pubsub.iam.gserviceaccount.com" gcloud pubsub topics add-iam-policy-binding dead-letter-topic-name \ --member="serviceAccount:$PUBSUB_SERVICE_ACCOUNT"\ --role="roles/pubsub.publisher"
Per concedere l'autorizzazione a Pub/Sub di riconoscere i messaggi inoltrati non recapitabili, esegui questo comando:
PUBSUB_SERVICE_ACCOUNT="service-project-number@gcp-sa-pubsub.iam.gserviceaccount.com" gcloud pubsub subscriptions add-iam-policy-binding subscription-id \ --member="serviceAccount:$PUBSUB_SERVICE_ACCOUNT"\ --role="roles/pubsub.subscriber"
Monitorare i tentativi di consegna
Dopo aver attivato un argomento messaggi non recapitabili per un abbonamento, ogni messaggio di quell'abbonamento ha un campo che specifica il numero di tentativi di consegna:
I messaggi ricevuti da una sottoscrizione pull includono il campo
delivery_attempt
.I messaggi ricevuti da una sottoscrizione push includono il campo
deliveryAttempt
.
I seguenti esempi mostrano come ottenere il numero di tentativi di consegna:
C++
Prima di provare questo esempio, segui le istruzioni di configurazione di C++ nella guida rapida all'utilizzo delle librerie client. Per ulteriori informazioni, consulta la documentazione di riferimento dell'API Pub/Sub C++.
C#
Prima di provare questo esempio, segui le istruzioni di configurazione di C# nella guida rapida di Pub/Sub per l'utilizzo delle librerie client. Per saperne di più, consulta la documentazione di riferimento dell'API Pub/Sub C#.
Per eseguire l'autenticazione in Pub/Sub, configura le Credenziali predefinite dell'applicazione. Per ulteriori informazioni, vedi Configura l'autenticazione per un ambiente di sviluppo locale.
Go
Prima di provare questo esempio, segui le istruzioni di configurazione di Go nella guida rapida di Pub/Sub per l'utilizzo delle librerie client. Per saperne di più, consulta la documentazione di riferimento dell'API Pub/Sub Go.
Per eseguire l'autenticazione in Pub/Sub, configura le Credenziali predefinite dell'applicazione. Per ulteriori informazioni, vedi Configura l'autenticazione per un ambiente di sviluppo locale.
Java
Prima di provare questo esempio, segui le istruzioni di configurazione di Java nella guida rapida di Pub/Sub per l'utilizzo delle librerie client. Per saperne di più, consulta la documentazione di riferimento dell'API Pub/Sub Java.
Per eseguire l'autenticazione in Pub/Sub, configura le Credenziali predefinite dell'applicazione. Per ulteriori informazioni, vedi Configura l'autenticazione per un ambiente di sviluppo locale.
Node.js
Prima di provare questo esempio, segui le istruzioni di configurazione di Node.js nella guida rapida di Pub/Sub per l'utilizzo delle librerie client. Per saperne di più, consulta la documentazione di riferimento dell'API Pub/Sub Node.js.
Per eseguire l'autenticazione in Pub/Sub, configura le Credenziali predefinite dell'applicazione. Per ulteriori informazioni, vedi Configura l'autenticazione per un ambiente di sviluppo locale.
PHP
Prima di provare questo esempio, segui le istruzioni di configurazione di PHP nella guida rapida di Pub/Sub per l'utilizzo delle librerie client. Per saperne di più, consulta la documentazione di riferimento dell'API Pub/Sub PHP.
Per eseguire l'autenticazione in Pub/Sub, configura le Credenziali predefinite dell'applicazione. Per ulteriori informazioni, vedi Configura l'autenticazione per un ambiente di sviluppo locale.
Python
Prima di provare questo esempio, segui le istruzioni di configurazione di Python nella guida rapida di Pub/Sub per l'utilizzo delle librerie client. Per saperne di più, consulta la documentazione di riferimento dell'API Pub/Sub Python.
Per eseguire l'autenticazione in Pub/Sub, configura le Credenziali predefinite dell'applicazione. Per ulteriori informazioni, vedi Configura l'autenticazione per un ambiente di sviluppo locale.
Ruby
Prima di provare questo esempio, segui le istruzioni di configurazione di Ruby nella guida rapida di Pub/Sub per l'utilizzo delle librerie client. Per saperne di più, consulta la documentazione di riferimento dell'API Pub/Sub Ruby.
Per eseguire l'autenticazione in Pub/Sub, configura le Credenziali predefinite dell'applicazione. Per ulteriori informazioni, vedi Configura l'autenticazione per un ambiente di sviluppo locale.
Quando Pub/Sub inoltra un messaggio non recapitabile a un argomento messaggi non recapitabili, aggiunge i seguenti attributi al messaggio:
CloudPubSubDeadLetterSourceDeliveryCount
: il numero di tentativi di consegna all'abbonamento di origine.CloudPubSubDeadLetterSourceSubscription
: il nome dell'abbonamento di origine.CloudPubSubDeadLetterSourceSubscriptionProject
: il nome del progetto che contiene l'abbonamento di origine.CloudPubSubDeadLetterSourceTopicPublishTime
: il timestamp della pubblicazione originale del messaggio.CloudPubSubDeadLetterSourceDeliveryErrorMessage
: Il motivo per cui il messaggio non è stato recapitato alla destinazione originale. L'attributo esiste solo per l'esportazione degli abbonamenti.
Monitorare i messaggi inoltrati
Dopo aver inoltrato un messaggio non recapitabile, il servizio Pub/Sub rimuove il messaggio dalla sottoscrizione. Puoi monitorare i messaggi inoltrati con Cloud Monitoring.
Se colleghi una sottoscrizione all'argomento messaggi non recapitabili, i messaggi utilizzano il criterio di scadenza della sottoscrizione collegata anziché il periodo di scadenza della sottoscrizione con la proprietà dell'argomento messaggi non recapitabili.
La metrica subscription/dead_letter_message_count
registra il numero di messaggi non recapitabili che Pub/Sub
inoltra da una sottoscrizione.
Per ulteriori informazioni, vedi Monitoraggio dei messaggi non recapitabili inoltrati.
Rimuovere un argomento messaggi non recapitabili
Per interrompere l'inoltro dei messaggi non recapitabili, rimuovi l'argomento messaggi non recapitabili dall'abbonamento.
Puoi rimuovere un argomento messaggi non recapitabili da una sottoscrizione utilizzando la consoleGoogle Cloud , Google Cloud CLI o l'API Pub/Sub.
Console
Per rimuovere un argomento messaggi non recapitabili da un abbonamento, completa i seguenti passaggi:
Nella console Google Cloud , vai alla pagina Abbonamenti.
Nell'elenco degli abbonamenti, fai clic su more_vert accanto all'abbonamento da aggiornare.
Dal menu contestuale, seleziona Modifica.
Nella sezione Messaggi non recapitabili, deseleziona Abilita messaggi non recapitabili.
Fai clic su Aggiorna.
gcloud
Per rimuovere un argomento messaggi non recapitabili da un abbonamento, utilizza il
comando gcloud pubsub subscriptions update
e il flag --clear-dead-letter-policy
:
gcloud pubsub subscriptions update subscription-id \ --clear-dead-letter-policy
C++
Prima di provare questo esempio, segui le istruzioni di configurazione di C++ nella guida rapida all'utilizzo delle librerie client. Per ulteriori informazioni, consulta la documentazione di riferimento dell'API Pub/Sub C++.
C#
Prima di provare questo esempio, segui le istruzioni di configurazione di C# nella guida rapida all'utilizzo delle librerie client. Per ulteriori informazioni, consulta la documentazione di riferimento dell'API Pub/Sub C#.
Vai
Prima di provare questo esempio, segui le istruzioni di configurazione di Go nella guida rapida all'utilizzo delle librerie client. Per saperne di più, consulta la documentazione di riferimento dell'API Pub/Sub Go.
Java
Prima di provare questo esempio, segui le istruzioni di configurazione di Java nella Guida rapida all'utilizzo delle librerie client. Per ulteriori informazioni, consulta la documentazione di riferimento dell'API Java di Pub/Sub.
Node.js
Prima di provare questo esempio, segui le istruzioni di configurazione di Node.js nella Guida rapida all'utilizzo delle librerie client. Per saperne di più, consulta la documentazione di riferimento dell'API Pub/Sub Node.js.
PHP
Prima di provare questo esempio, segui le istruzioni di configurazione di PHP nella guida rapida all'utilizzo delle librerie client. Per saperne di più, consulta la documentazione di riferimento dell'API Pub/Sub PHP.
Python
Prima di provare questo esempio, segui le istruzioni di configurazione di Python nella guida rapida all'utilizzo delle librerie client. Per saperne di più, consulta la documentazione di riferimento dell'API Pub/Sub Python.
Ruby
Prima di provare questo esempio, segui le istruzioni di configurazione di Ruby nella guida rapida all'utilizzo delle librerie client. Per saperne di più, consulta la documentazione di riferimento dell'API Pub/Sub Ruby.
Ruby
Prima di provare questo esempio, segui le istruzioni di configurazione di Ruby nella guida rapida di Pub/Sub per l'utilizzo delle librerie client. Per saperne di più, consulta la documentazione di riferimento dell'API Pub/Sub Ruby.
Per eseguire l'autenticazione in Pub/Sub, configura le Credenziali predefinite dell'applicazione. Per ulteriori informazioni, vedi Configura l'autenticazione per un ambiente di sviluppo locale.
Prezzi
Quando il servizio Pub/Sub inoltra i messaggi non recapitabili, si applicano le seguenti tariffe:
- Tariffe di pubblicazione addebitate all'account di fatturazione associato al progetto che contiene l'argomento messaggi non recapitabili.
- Le tariffe di abbonamento per i messaggi in uscita vengono addebitate all'account di fatturazione associato al progetto contenente l'abbonamento con la proprietà argomento messaggi non recapitabili.
Se imposti la proprietà dell'argomento messaggi non recapitabili di una sottoscrizione, ma il criterio di località di archiviazione dei messaggi dell'argomento messaggi non recapitabili non consente la regione che contiene la sottoscrizione, si applicano anche le tariffe di pubblicazione per i messaggi in uscita.
Le tariffe di pubblicazione per i messaggi in uscita vengono addebitate al progetto che contiene largomento messaggi non recapitabili. Per ulteriori informazioni, vedi Prezzi.
Passaggi successivi
- Ricevere i messaggi non recapitabili inoltrati.
- Monitora le applicazioni Pub/Sub.
- Scopri i concetti di recapito dei messaggi.