Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Bagaimana Lambda menangani kesalahan dan mencoba ulang dengan pemanggilan asinkron
Lambda mengelola antrian peristiwa asinkron fungsi Anda dan mencoba lagi kesalahan. Jika fungsi mengembalikan kesalahan, secara default Lambda mencoba menjalankannya dua kali lagi, dengan menunggu satu menit antara dua upaya pertama, dan dua menit antara upaya kedua dan ketiga. Kesalahan Event Function mencakup kesalahan yang dikembalikan oleh kode fungsi dan kesalahan yang dikembalikan oleh runtime fungsi, seperti batas waktu.
Jika Fungsi Peristiwa tidak memiliki cukup konkurensi yang tersedia untuk memproses semua peristiwa, permintaan tambahan akan dibatasi. Untuk kesalahan pelambatan (429) dan kesalahan sistem (seri 500), Lambda mengembalikan acara ke antrian dan mencoba menjalankan fungsi lagi hingga 6 jam secara default. Interval percobaan lagi meningkat secara eksponensial dari 1 detik setelah percobaan pertama hingga maksimum 5 menit. Jika antrian berisi banyak entri, Lambda meningkatkan interval coba lagi dan mengurangi tingkat di mana ia membaca peristiwa dari antrian.
Bahkan jika Fungsi Acara Anda tidak menampilkan kesalahan, dimungkinkan untuk menerima peristiwa yang sama dari Lambda beberapa kali karena antrean itu sendiri pada akhirnya konsisten. Jika fungsi tidak dapat mengikuti peristiwa masuk, peristiwa juga dapat dihapus dari antrean tanpa dikirim ke fungsi. Pastikan bahwa kode fungsi Anda secara rapi menangani duplikasi peristiwa, dan bahwa Anda memiliki cukup konkurensi tersedia untuk menangani semua invokasi.
Ketika antrean sangat panjang, acara baru mungkin menua sebelum Lambda memiliki kesempatan untuk mengirimnya ke Fungsi Acara Anda. Saat peristiwa kedaluwarsa atau gagal dalam semua upaya pemrosesan, Lambda menghapusnya. Anda dapat mengonfigurasi penanganan kesalahan untuk Fungsi Peristiwa untuk mengurangi jumlah percobaan ulang yang dilakukan Lambda, atau membuang peristiwa yang belum diproses dengan lebih cepat. Untuk menangkap peristiwa yang dibuang, konfigurasikan antrian huruf mati untuk fungsi tersebut. Untuk menangkap catatan pemanggilan yang gagal (seperti batas waktu atau kesalahan runtime), buat tujuan saat gagal.