View a markdown version of this page

Fungsi tahan lama Lambda - AWS Lambda

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

Fungsi tahan lama Lambda

Dengan fungsi yang AWS Lambda tahan lama, Anda dapat membangun aplikasi multi-langkah tangguh dan alur kerja AI yang dapat dijalankan hingga satu tahun sambil mempertahankan kemajuan yang andal meskipun ada gangguan. Ketika fungsi tahan lama berjalan, siklus hidup lengkap ini disebut eksekusi tahan lama, yang menggunakan pos pemeriksaan untuk melacak kemajuan dan secara otomatis pulih dari kegagalan melalui pemutaran ulang, mengeksekusi ulang dari awal sambil melewatkan pekerjaan yang telah selesai.

Dalam setiap fungsi, Anda menggunakan operasi tahan lama sebagai blok bangunan mendasar. Langkah-langkah mengeksekusi logika bisnis dengan percobaan ulang bawaan dan pelacakan kemajuan, sementara menunggu menangguhkan eksekusi tanpa menimbulkan biaya komputasi, menjadikannya ideal untuk proses yang berjalan lama seperti alur kerja manusia-in-the-loop atau polling dependensi eksternal. Baik Anda memproses pesanan, mengoordinasikan layanan mikro, atau mengatur aplikasi AI agentic, fungsi tahan lama mempertahankan status secara otomatis dan pulih dari kegagalan saat Anda menulis kode dalam bahasa pemrograman yang sudah dikenal.

catatan

Panduan ini mencakup topik layanan Lambda seperti penerapan, konfigurasi, izin, pemanggilan, pemantauan, dan kuota. Untuk referensi pemrograman SDK, tutorial memulai cepat, dan panduan khusus bahasa, lihat Panduan Pengembang SDK Eksekusi AWS Tahan Lama.

Manfaat utama

Tulis kode tangguh secara alami: Dengan konstruksi pemrograman yang sudah dikenal, Anda menulis kode yang menangani kegagalan secara otomatis. Built-in checkpointing, percobaan ulang transparan, dan pemulihan otomatis berarti logika bisnis Anda tetap bersih dan fokus.

Bayar hanya untuk apa yang Anda gunakan: Selama operasi tunggu, fungsi Anda ditangguhkan tanpa menimbulkan biaya komputasi. Untuk alur kerja yang berjalan lama yang menunggu berjam-jam atau berhari-hari, Anda membayar hanya untuk waktu pemrosesan aktual, bukan menunggu siaga.

Kesederhanaan operasional: Dengan model tanpa server Lambda, Anda mendapatkan penskalaan otomatis, termasuk skala ke nol, tanpa mengelola infrastruktur. Fungsi tahan lama menangani manajemen status, logika coba ulang, dan pemulihan kegagalan secara otomatis, mengurangi overhead operasional.

Kapan menggunakan fungsi tahan lama

Short-lived koordinasi: Mengkoordinasikan pembayaran, inventaris, dan pengiriman di berbagai layanan dengan rollback otomatis pada kegagalan. Memproses pesanan melalui validasi, otorisasi pembayaran, alokasi inventaris, dan pemenuhan dengan jaminan penyelesaian.

Memproses pembayaran dengan percaya diri: Bangun aliran pembayaran tangguh yang mempertahankan status transaksi melalui kegagalan dan menangani percobaan ulang secara otomatis. Koordinasikan otorisasi multi-langkah, pemeriksaan penipuan, dan penyelesaian di seluruh penyedia pembayaran dengan auditabilitas penuh di seluruh langkah.

Bangun alur kerja AI yang andal: Buat alur kerja AI multi-langkah yang merangkai panggilan model, menggabungkan umpan balik manusia, dan menangani tugas yang berjalan lama secara deterministik selama kegagalan. Secara otomatis melanjutkan setelah penangguhan, dan hanya membayar untuk waktu eksekusi aktif.

Mengatur pemenuhan pesanan yang kompleks: Koordinasikan pemrosesan pesanan di seluruh sistem inventaris, pembayaran, pengiriman, dan notifikasi dengan ketahanan bawaan. Secara otomatis menangani kegagalan sebagian, mempertahankan status pesanan meskipun ada gangguan, dan secara efisien menunggu peristiwa eksternal tanpa menghabiskan sumber daya komputasi.

Otomatiskan alur kerja bisnis multi-langkah: Bangun alur kerja yang andal untuk proses orientasi karyawan, persetujuan pinjaman, dan kepatuhan yang berlangsung berhari-hari atau berminggu-minggu. Pertahankan status alur kerja di seluruh persetujuan manusia, integrasi sistem, dan tugas terjadwal sambil memberikan visibilitas penuh ke dalam status dan riwayat proses.

Bagaimana fungsi tahan lama dibandingkan dengan Fungsi Langkah

Fungsi tahan lama dan Fungsi Langkah menyediakan orkestrasi alur kerja dengan manajemen status otomatis. Perbedaan utama adalah di mana mereka berjalan dan bagaimana Anda mendefinisikan alur kerja:

  • Fungsi tahan lama: J alankan dalam Lambda, gunakan bahasa pemrograman standar, dikelola dalam lingkungan Lambda

  • Fungsi Langkah: Layanan mandiri, DSL berbasis grafik atau desainer visual, dikelola sepenuhnya dengan pemeliharaan nol

Fungsi tahan lama sangat ideal untuk pengembangan aplikasi di Lambda di mana alur kerja digabungkan erat dengan logika bisnis. Step Functions unggul dalam orkestrasi alur kerja di seluruh AWS layanan di mana Anda memerlukan desain visual, integrasi asli ke 220+ layanan, dan infrastruktur tanpa pemeliharaan.

Untuk perbandingan terperinci, lihat Fungsi tahan lama atau Fungsi Langkah.

Cara kerjanya

Di bawah kap, fungsi tahan lama adalah fungsi Lambda reguler menggunakan checkpoint/replay mekanisme untuk melacak kemajuan dan mendukung operasi yang berjalan lama melalui titik suspensi yang ditentukan pengguna, yang biasa disebut sebagai eksekusi tahan lama. Setelah fungsi Anda dilanjutkan dari jeda atau gangguan, sistem melakukan pemutaran ulang. Selama pemutaran ulang, kode Anda berjalan dari awal tetapi melewati pos pemeriksaan yang telah selesai, menggunakan hasil yang disimpan alih-alih mengeksekusi kembali operasi yang telah selesai. Mekanisme replay ini memastikan konsistensi sambil memungkinkan eksekusi yang berjalan lama.

Untuk memanfaatkan mekanisme checkpoint-and-replay ini dalam aplikasi Anda, Lambda menyediakan SDK eksekusi yang tahan lama. SDK menghilangkan kompleksitas pengelolaan pos pemeriksaan dan pemutaran ulang, mengekspos primitif sederhana yang disebut operasi tahan lama yang Anda gunakan dalam kode Anda. SDK tersedia untuk JavaScript, Python, dan Java TypeScript, terintegrasi dengan mulus dengan alur kerja pengembangan Lambda Anda yang ada.

Dengan SDK, Anda membungkus event handler Lambda Anda, yang kemudian menyediakan acara DurableContext bersama Anda. Konteks ini memberi Anda akses ke operasi yang tahan lama seperti langkah dan penantian. Anda menulis logika fungsi Anda sebagai kode berurutan normal, tetapi alih-alih memanggil layanan secara langsung, Anda membungkus panggilan tersebut dalam langkah-langkah untuk pemeriksaan otomatis dan percobaan ulang. Ketika Anda perlu menjeda eksekusi, Anda menambahkan penantian yang menangguhkan fungsi Anda tanpa menimbulkan biaya. SDK menangani semua kompleksitas manajemen status dan pemutaran ulang di belakang layar, sehingga kode Anda tetap bersih dan dapat dibaca.

Diagram showing how Lambda durable functions use checkpoints to persist progress and replay to resume after interruptions.

Langkah selanjutnya