SocialGO

Menangani kesalahan API, percobaan ulang, dan idempotensi

Coba ulang kesalahan sementara dengan backoff, gagal cepat pada yang permanen, dan gunakan idempotensi untuk menghindari biaya ganda.

Rancang untuk kegagalan, bukan hanya alur ideal. Kasus paling berbahaya adalah yang ambigu, yaitu permintaan yang mungkin berhasil atau tidak sebelum koneksi terputus.

Gunakan kunci idempotensi pada permintaan pesanan sehingga percobaan ulang yang aman setelah timeout mengembalikan pesanan yang sudah ada alih-alih membuat biaya duplikat. Coba ulang kesalahan sementara (batas laju, 5xx sementara) dengan backoff yang meningkat dan batas atas.

Gagal cepat pada kesalahan permanen seperti permintaan yang buruk atau saldo tidak cukup, dan sampaikan kepada manusia, karena mencoba ulang yang seperti itu hanya membuang waktu. Catat setiap permintaan dan respons beserta ID pesanannya agar Anda dapat merekonsiliasi nanti.

Apakah artikel ini membantu?

Artikel terkait

Masih butuh bantuan?

Tidak menemukan yang Anda cari? Tim kami dengan senang hati membantu.

Waktu balasan rata-rata cepat. Sebagian besar permintaan mendapat respons pertama di hari yang sama.

Kembali ke Pusat Bantuan