Per impostazione predefinita, se un job Cloud Scheduler non riceve una conferma dal suo gestore, il job viene considerato non riuscito e verrà ritentato in base al backoff esponenziale che hai configurato. Puoi determinare questo comportamento di ripetizione nei seguenti modi quando crei o aggiorni un job Cloud Scheduler:
Eseguire una richiesta API diretta e configurare le impostazioni
RetryConfig
di una risorsaJob
Impostazioni di nuovi tentativi
Le tabelle seguenti descrivono le impostazioni di ripetizione dei tentativi che puoi configurare.
Numero massimo di nuovi tentativi
Il numero di tentativi che il sistema eseguirà per eseguire un job utilizzando la
procedura di backoff esponenziale descritta da maxDoublings
.
Descrizione | Se Se Non sono consentiti valori superiori a 5 e valori negativi. |
Predefinito | Il valore predefinito è 0. |
Etichetta console | Numero massimo di nuovi tentativi |
Flag CLI | --max-retry-attempts |
Campo API | retryCount |
Durata massima dei nuovi tentativi
Il limite di tempo per ritentare un job non riuscito, misurato dal momento in cui è stato
tentato per la prima volta un'esecuzione. Se specificato con retryCount
, il job verrà
riprovato finché non vengono raggiunti entrambi i limiti.
Descrizione | Una durata in secondi con un massimo di nove cifre frazionarie, che termina con "s", ad esempio "3,5 s". Una durata pari a 0 indica che la durata del nuovo tentativo è illimitata. Tuttavia, se
anche |
Predefinito | Il valore predefinito è 0 secondi. |
Etichetta console | Durata massima nuovi tentativi |
Flag CLI | --max-retry-duration |
Campo API | maxRetryDuration |
Durata minima di backoff
Il tempo minimo di attesa prima di riprovare un job non riuscito.
Descrizione | Una durata in secondi con un massimo di nove cifre frazionarie, che termina con "s", ad esempio "3,5 s". |
Predefinito | Il valore predefinito è 5 secondi. |
Etichetta console | Durata minima di backoff |
Flag CLI | --min-backoff |
Campo API | minBackoffDuration |
Durata massima di backoff
Il tempo massimo di attesa prima di riprovare un job non riuscito.
Descrizione | Una durata in secondi con un massimo di nove cifre frazionarie, che termina con "s", ad esempio "3,5 s". |
Predefinito | Il valore predefinito è 3600 secondi (1 ora). |
Etichetta console | Durata massima backoff |
Flag CLI | --max-backoff |
Campo API | maxBackoffDuration |
Numero massimo di raddoppi
Numero massimo di volte in cui l'intervallo tra i tentativi di esecuzione di un job non riuscito verrà raddoppiato prima che l'aumento diventi costante.
Descrizione | Il tempo tra i tentativi raddoppia maxDoublings volte.
L'intervallo tra i tentativi di un job inizia a Se
Pertanto, i tentativi verranno ripetuti dopo 10, 20, 40, 80 e 160 secondi. Se
Pertanto, i tentativi verranno ripetuti dopo 10, 20, 40, 120 e 120 secondi. |
Predefinito | Il valore predefinito è 5. |
Etichetta console | Numero massimo di raddoppi |
Flag CLI | --max-doublings |
Campo API | maxDoublings |
Esempi di nuovi tentativi
Gli esempi seguenti mostrano il comportamento di ripetizione quando un job Cloud Scheduler non viene completato correttamente.
- Se
retryCount
emaxRetryDuration
non sono impostati Entrambe le impostazioni sono impostate su 0 per impostazione predefinita e il job non viene riprovato.
Tieni presente che Cloud Scheduler tenterà di eseguire il job al successivo orario di esecuzione pianificato.
- Se sono impostati sia
retryCount
chemaxRetryDuration
Il job verrà ritentato almeno
retryCount
volte fino a raggiungeremaxRetryDuration
.Tieni presente che il job potrebbe essere ritentato più volte rispetto a
retryCount
.- Se
retryCount
è impostato emaxRetryDuration
non è impostato L'impostazione
maxRetryDuration
è impostata su 0 per impostazione predefinita e il job verrà ritentato esattamenteretryCount
volte.- Se
retryCount
non è impostato emaxRetryDuration
è impostato Il job verrà ritentato un numero qualsiasi di volte (fino a un massimo di 5 volte) o fino al raggiungimento di
maxRetryDuration
.