Waktu proses Instans Terkelola Lambda - AWS Lambda

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

Waktu proses Instans Terkelola Lambda

Lambda memproses permintaan secara berbeda saat menggunakan Instans Terkelola Lambda. Alih-alih menangani permintaan secara berurutan di setiap lingkungan eksekusi, Instans Terkelola Lambda memproses beberapa permintaan secara bersamaan dalam setiap lingkungan eksekusi. Perubahan dalam model eksekusi ini berarti bahwa fungsi yang menggunakan Instans Terkelola Lambda perlu mempertimbangkan keamanan utas, manajemen status, dan isolasi konteks, masalah yang tidak muncul dalam model konkurensi tunggal Lambda (default). Selain itu, implementasi multi-konkurensi bervariasi antar runtime.

Bahasa yang didukung

Instans Terkelola Lambda dapat digunakan dengan bahasa pemrograman dan runtime berikut:

  • Java: Java 21 dan yang lebih baru.

  • Python: Python 3.13 dan yang lebih baru.

  • Node.js: Node.js 22 dan yang lebih baru.

  • .NET: .NET 8 dan yang lebih baru.

  • Rust: Didukung menggunakan runtime provided.al2023 khusus OS dan yang lebih baru.

Pertimbangan khusus bahasa

Setiap bahasa pemrograman mengimplementasikan multi-konkurensi secara berbeda. Anda perlu memahami bagaimana multi-konkurensi diimplementasikan dalam bahasa pemrograman pilihan Anda untuk menerapkan praktik terbaik konkurensi yang sesuai.

Java

Menggunakan satu proses dengan thread OS untuk konkurensi. Beberapa thread mengeksekusi metode handler secara bersamaan, membutuhkan penanganan status dan sumber daya bersama yang aman untuk thread-safe.

Python

Menggunakan beberapa proses Python di mana setiap permintaan bersamaan berjalan dalam proses yang terpisah. Ini melindungi dari sebagian besar masalah konkurensi, meskipun kehati-hatian diperlukan untuk sumber daya bersama seperti /tmp direktori.

Node.js

Menggunakan thread pekerja dengan eksekusi asinkron. Permintaan bersamaan didistribusikan di seluruh thread pekerja, dan setiap thread pekerja juga dapat menangani permintaan bersamaan secara asinkron, memerlukan penanganan status dan sumber daya bersama yang aman.

.NET

Menggunakan .NET Tasks dengan pemrosesan asinkron dari beberapa permintaan bersamaan. Membutuhkan penanganan negara dan sumber daya bersama yang aman.

Karat

Menggunakan satu proses dengan tugas async yang didukung oleh Tokio. Pawang harus Clone +Send.

Langkah selanjutnya

Untuk informasi rinci tentang setiap runtime, lihat topik berikut: