Secara default, jika tugas Cloud Scheduler tidak menerima konfirmasi dari pengendali, tugas tersebut dianggap gagal, dan akan dicoba lagi sesuai dengan penundaan eksponensial yang telah Anda konfigurasi. Anda dapat menentukan perilaku percobaan ulang ini dengan cara berikut saat membuat atau memperbarui tugas Cloud Scheduler:
Membuat permintaan API langsung dan mengonfigurasi
RetryConfig
setelan resourceJob
Setelan coba lagi
Tabel berikut menjelaskan setelan percobaan ulang yang dapat Anda konfigurasi.
Upaya percobaan ulang maksimum
Jumlah upaya yang akan dilakukan sistem untuk menjalankan tugas menggunakan
prosedur backoff eksponensial yang dijelaskan oleh maxDoublings
.
Deskripsi | Jika Jika Nilai yang lebih besar dari 5 dan nilai negatif tidak diizinkan. |
Default | Defaultnya adalah 0. |
Label konsol | Upaya percobaan ulang maksimum |
Flag CLI | --max-retry-attempts |
Kolom API | retryCount |
Durasi percobaan ulang maksimum
Batas waktu untuk mencoba kembali tugas yang gagal, diukur dari waktu saat
eksekusi pertama kali dicoba. Jika ditentukan dengan retryCount
, tugas akan
dicoba lagi hingga kedua batas tercapai.
Deskripsi | Durasi dalam detik dengan maksimal sembilan digit pecahan, yang diakhiri dengan "s"—misalnya, "3.5s". Durasi 0 berarti durasi percobaan ulang tidak terbatas. Namun, jika
|
Default | Defaultnya adalah 0 detik. |
Label konsol | Durasi percobaan ulang maksimum |
Flag CLI | --max-retry-duration |
Kolom API | maxRetryDuration |
Durasi backoff minimum
Jumlah waktu minimum untuk menunggu sebelum mencoba kembali tugas setelah gagal.
Deskripsi | Durasi dalam detik dengan maksimal sembilan digit pecahan, yang diakhiri dengan "s"—misalnya, "3.5s". |
Default | Defaultnya adalah 5 detik. |
Label konsol | Durasi backoff minimum |
Flag CLI | --min-backoff |
Kolom API | minBackoffDuration |
Durasi backoff maksimum
Jumlah waktu maksimum untuk menunggu sebelum mencoba kembali tugas setelah gagal.
Deskripsi | Durasi dalam detik dengan maksimal sembilan digit pecahan, yang diakhiri dengan "s"—misalnya, "3.5s". |
Default | Defaultnya adalah 3.600 detik (1 jam). |
Label konsol | Durasi backoff maksimum |
Flag CLI | --max-backoff |
Kolom API | maxBackoffDuration |
Penggandaan maksimum
Jumlah maksimum interval antara percobaan ulang tugas yang gagal akan dilipatgandakan sebelum peningkatan menjadi konstan.
Deskripsi | Waktu di antara upaya percobaan ulang akan digandakan maxDoublings kali.
Interval percobaan ulang tugas dimulai pada Jika
Dengan demikian, permintaan akan dicoba ulang pada 10 detik, 20 detik, 40 detik, 80 detik, 160 detik. Jika
Dengan demikian, permintaan akan dicoba ulang pada 10 detik, 20 detik, 40 detik, 120 detik, 120 detik. |
Default | Defaultnya adalah 5. |
Label konsol | Penggandaan maksimum |
Flag CLI | --max-doublings |
Kolom API | maxDoublings |
Contoh percobaan ulang
Contoh berikut menunjukkan perilaku percobaan ulang saat tugas Cloud Scheduler tidak berhasil diselesaikan.
- Jika
retryCount
danmaxRetryDuration
tidak ditetapkan Kedua setelan ditetapkan secara default ke 0 dan tugas tidak akan dicoba ulang sama sekali.
Perhatikan bahwa Cloud Scheduler akan mencoba menjalankan tugas pada waktu eksekusi terjadwal berikutnya.
- Jika
retryCount
danmaxRetryDuration
ditetapkan Tugas akan dicoba ulang setidaknya
retryCount
kali hingga mencapaimaxRetryDuration
.Perhatikan bahwa tugas dapat dicoba ulang lebih banyak daripada
retryCount
.- Jika
retryCount
ditetapkan danmaxRetryDuration
tidak ditetapkan Setelan
maxRetryDuration
secara default adalah 0 dan tugas akan dicoba ulang persisretryCount
kali.- Jika
retryCount
tidak ditetapkan danmaxRetryDuration
ditetapkan Tugas akan dicoba ulang beberapa kali (maksimal 5 kali) atau hingga mencapai
maxRetryDuration
.