Configura il routing, i limiti e i nuovi tentativi della coda

Puoi configurare la coda Cloud Tasks quando la crei o in qualsiasi momento successivo. La configurazione viene applicata a tutte le attività in quella coda.

Esistono tre aspetti di base per la configurazione delle code:

Configurare il routing a livello di coda

La configurazione del routing a livello di coda esegue l'override del routing impostato a livello di attività. Questa opzione è utile se vuoi utilizzare Cloud Tasks come buffer davanti al servizio di destinazione o se devi modificare il routing per tutte le attività in una coda.

Il routing a livello di coda si applica a:

  • Attività presenti nella coda
  • Attività aggiunte alla coda dopo aver impostato il routing a livello di coda

Limitazioni

Il routing a livello di coda non è compatibile con le chiavi di crittografia gestite dal cliente (CMEK) di Cloud Key Management Service (Cloud KMS). Se CMEK è abilitata, non puoi eseguire le seguenti operazioni:

  • Creare attività in una coda con routing a livello di coda
  • Applicare il routing a livello di coda

Configurare il routing a livello di coda per le attività HTTP

Puoi configurare una coda per eseguire l'override del routing a livello di attività durante la creazione o l'aggiornamento della coda. Per configurare il calcolo itinerario a livello di coda, imposta il parametro uriOverride della coda sul tuo itinerario preferito.

Se applichi il routing a livello di coda come aggiornamento a una coda esistente, metti in pausa la coda prima di applicare le modifiche e attendi un minuto dopo aver applicato le modifiche per riprendere la coda.

  1. Metti in pausa la coda eseguendo il seguente comando:

      gcloud tasks queues pause QUEUE_ID
      

    Sostituisci QUEUE_ID con l'ID della coda.

  2. Aggiorna o rimuovi il routing a livello di coda.

    • Per aggiornare il routing a livello di coda, imposta il uriOverride parametro sulla route aggiornata.

    • Per rimuovere il routing a livello di coda utilizzando l'API REST o RPC:

      • API REST: invia una patch richiesta per la coda con un payload vuoto e il parametro updateMask impostato su httpTarget.

      • API RPC: invia una updateQueueRequest per la coda con un payload vuoto e il parametro update_mask impostato su http_target.

    L'esempio seguente utilizza l'API REST per aggiornare l'host a cui vengono indirizzate le attività:

    curl -X PATCH -d @- -i \
      -H "Authorization: Bearer ACCESS_TOKEN" \
      -H "Content-Type: application/json" \
      "https://cloudtasks.googleapis.com/v2/projects/PROJECT_ID/locations/LOCATION/queues/QUEUE_ID?updateMask=httpTarget.uriOverride" << EOF
    {
      "httpTarget": {"uriOverride":{"host":"NEW_HOST"}}
    }
    EOF
    

    Sostituisci quanto segue:

    • ACCESS_TOKEN: il tuo token di accesso. Puoi ottenerlo eseguendo questo comando nel terminale:

      gcloud auth application-default login
      gcloud auth application-default print-access-token