Topik ini menjelaskan kebijakan pengulangan dan antrian pesan gagal yang didukung oleh aliran peristiwa.
Kebijakan Pengulangan
Kebijakan pengulangan menentukan metode untuk mengulang peristiwa yang gagal dikirim. Aliran peristiwa di EventBridge mendukung pengulangan mundur dan pengulangan peluruhan eksponensial.
Pengulangan mundur: Peristiwa yang gagal dapat diulang hingga maksimal tiga kali. Interval antara dua pengulangan berturut-turut adalah nilai acak antara 10 hingga 20 detik. Ini merupakan kebijakan pengulangan default.
Pengulangan peluruhan eksponensial: Peristiwa yang gagal dapat diulang hingga maksimal 176 kali. Interval antara dua pengulangan berturut-turut meningkat secara eksponensial hingga maksimum 512 detik. Total waktu yang tersedia untuk pengulangan adalah satu hari. Interval spesifiknya adalah 1 detik, 2 detik, 4 detik, 8 detik, 16 detik, 32 detik, 64 detik, 128 detik, 256 detik, dan 512 detik. Nilai 512 detik digunakan untuk 167 pengulangan.
Kebijakan Toleransi Kesalahan
Kebijakan toleransi kesalahan menentukan cara menangani kesalahan. Aliran peristiwa di EventBridge mendukung kebijakan berikut:
Toleransi kesalahan diizinkan: Mengizinkan toleransi kesalahan. Jika terjadi kesalahan, pemrosesan peristiwa tidak diblokir. Jika peristiwa gagal dikirim setelah jumlah maksimum pengulangan tercapai, peristiwa tersebut dikirim ke antrian pesan gagal atau dibuang.
Toleransi kesalahan dilarang: Tidak mengizinkan toleransi kesalahan. Jika terjadi kesalahan pada suatu peristiwa dan peristiwa tersebut gagal dikirim setelah jumlah maksimum pengulangan tercapai, pemrosesan peristiwa diblokir. Dalam hal ini, status tugas secara otomatis berubah menjadi Ready.
Jika pengulangan tidak dapat dilakukan karena kesalahan seperti konfigurasi sumber daya yang tidak valid, status tugas secara otomatis berubah menjadi Start Failed.
Antrian Pesan Gagal
Antrian pesan gagal berlaku dalam sebuah tugas. Jika peristiwa gagal diproses atau dikirim setelah jumlah maksimum pengulangan yang ditentukan oleh kebijakan pengulangan tercapai, data peristiwa mentah dikirim ke antrian pesan gagal. Secara default, fitur antrian pesan gagal dinonaktifkan.
Antrian di ApsaraMQ for RocketMQ, Simple Message Queue (formerly MNS), dan ApsaraMQ for Kafka, serta bus peristiwa di EventBridge dapat digunakan sebagai antrian pesan gagal.