Cloud-native API Gateway mendukung kebijakan retry tingkat entri rute yang secara otomatis mencoba ulang permintaan yang gagal. Anda dapat menentukan kondisi retry, seperti kegagalan koneksi, layanan backend tidak tersedia, atau kode status HTTP tertentu.
Kondisi retry
Ketika layanan backend mengembalikan error 5xx, Cloud-native API Gateway secara otomatis mencoba ulang permintaan hingga jumlah maksimum yang dikonfigurasi.
-
Kondisi retry untuk protokol HTTP:
-
5xx: Layanan backend mengembalikan respons
5xx, atau koneksi terputus, di-reset, atau timeout selama operasi baca.CatatanKondisi
5xxmencakup kondisiconnect-failuredanrefused-stream. -
reset: Koneksi terputus, di-reset, atau timeout selama operasi baca.
-
connect-failure: Permintaan gagal karena koneksi terputus.
-
refused-stream: Layanan backend me-reset aliran dengan kode kesalahan
REFUSED_STREAM. -
retriable-status-codes: Kode status HTTP dalam respons sesuai dengan kode status retry yang ditentukan.
CatatanAnda hanya dapat menggunakan kode status retry jika
retriable-status-codesditentukan dalam kondisi retry.
-
-
Kondisi retry untuk protokol gRPC:
-
cancelled: Kode status gRPC dalam header respons adalah
cancelled. -
deadline-exceeded: Kode status gRPC dalam header respons adalah
deadline-exceeded. -
internal: Kode status gRPC dalam header respons adalah
internal. -
resource-exhausted: Kode status gRPC dalam header respons adalah
resource-exhausted. -
unavailable: Kode status gRPC dalam header respons adalah
unavailable.
-
Konfigurasikan kebijakan retry entri rute
-
Anda dapat mengonfigurasi kebijakan retry dengan dua cara, tergantung pada cara API Anda dikelola:
API di luar instans
-
Masuk ke Konsol Cloud-native API Gateway. Di panel navigasi sebelah kiri, klik API, lalu pilih wilayah dari bilah menu atas.
-
Pada halaman HTTP API, gunakan daftar drop-down di bagian atas untuk memilih instans target. Anda dapat memilih instans tertentu atau All instances.
-
Di Routes, klik entri rute target.
API di dalam instans
-
Masuk ke Konsol Cloud-native API Gateway. Di panel navigasi sebelah kiri, klik Instance, lalu pilih wilayah dari bilah menu atas.
-
Pada halaman Instance, klik instans gerbang target. Di panel navigasi sebelah kiri, klik API, lalu klik API target.
-
Di Routes, klik entri rute target.
-
-
Klik tab Configure Policy. Di bagian Inbound Processing, klik Enable Policy/Plug-in.
-
Klik kartu Retry. Di panel Add Policy: Retry, konfigurasikan parameter dan klik Add.
CatatanSetelah mengonfigurasi dan mengaktifkan kebijakan retry, verifikasi bahwa kebijakan tersebut berfungsi sesuai harapan.
Parameter
Deskripsi
Enable
Mengaktifkan atau menonaktifkan kebijakan retry.
-
Enabled: Kebijakan retry aktif.
-
Disabled: Kebijakan retry tidak aktif.
CatatanJika kebijakan ini dinonaktifkan, gerbang menggunakan konfigurasi retry default. Jumlah retry default adalah 2, dan kondisi retry default adalah
connect-failure,refused-stream,unavailable,cancelled, danretriable-status-codes.Retry Times
Jumlah maksimum percobaan ulang untuk permintaan yang gagal. Nilai yang valid: 0 hingga 10. Disarankan menggunakan nilai 2 atau kurang.
CatatanNilai 0 menonaktifkan retry.
Retry Condition
Kondisi yang memicu retry. Anda dapat memilih beberapa kondisi. Untuk informasi selengkapnya, lihat Kondisi retry.
Retry Status Code
Kode status HTTP yang memicu retry. Anda dapat menentukan beberapa kode.
CatatanAnda hanya dapat mengonfigurasi parameter Retry Status Code jika
retriable-status-codesdipilih untuk Retry Condition. -