Materi
Tidak semua galat sama. Azure Architecture Center menyebut galat sementara (transient fault) sebagai gangguan seperti sambungan putus sesaat, layanan yang sedang tidak tersedia, atau timeout karena layanan sibuk. Gangguan ini sering pulih sendiri, sehingga tindakan yang sama kemungkinan berhasil bila diulang setelah jeda. Galat permanen tidak pulih dengan menunggu: data tidak sah, izin ditolak, atau produk yang tidak ada. Untuk galat jenis ini, pola Retry menyebut operasinya dibatalkan dan galatnya dilaporkan.
Penggolongan ditulis sebagai kebijakan, bukan ditebak. Kelas HTTP dan API sudah membahas arti 429 dan 503; di alur kerja keduanya masuk daftar sementara, sedangkan 400 atau 404 masuk daftar permanen. Kode yang tidak ada di kebijakan ditandai tidak dikenal dan diperiksa orang.
// Kebijakan contoh layanan cek resi (bukan aturan umum semua layanan)
const SEMENTARA = ["TIMEOUT", "JARINGAN", 429, 503];
const PERMANEN = [400, 401, 403, 404];
// 503 -> sementara: ulangi setelah jeda
// 404 -> permanen: batalkan dan laporkan
// 418 -> tidak dikenal: tandai untuk diperiksaTimeout adalah batas lama menunggu sebuah langkah. Step Functions memberi langkah Task field TimeoutSeconds, dan langkah yang berjalan lebih lama gagal dengan galat States.Timeout. Di latihan kelas ini waktu disimulasikan sebagai angka detik, sehingga hasilnya sama setiap kali dijalankan. AWS Builders' Library mengingatkan satu hal: timeout tidak membuktikan efeknya tidak terjadi. Server mungkin sudah menyimpan pesanan ketika jawabannya terlambat.