Mengelola dependensi Lambda dengan lapisan - AWS Lambda

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

Mengelola dependensi Lambda dengan lapisan

Lapisan Lambda adalah arsip file.zip yang berisi kode atau data tambahan. Lapisan biasanya berisi dependensi pustaka, runtime kustom, atau file konfigurasi.

Ada beberapa alasan mengapa Anda mungkin mempertimbangkan untuk menggunakan lapisan:

  • Untuk mengurangi ukuran paket penyebaran Anda. Alih-alih memasukkan semua dependensi fungsi Anda bersama dengan kode fungsi Anda dalam paket penerapan Anda, letakkan di lapisan. Ini membuat paket penerapan tetap kecil dan terorganisir.

  • Untuk memisahkan logika fungsi inti dari dependensi. Dengan lapisan, Anda dapat memperbarui dependensi fungsi Anda secara independen dari kode fungsi Anda, dan sebaliknya. Ini mempromosikan pemisahan kekhawatiran dan membantu Anda fokus pada logika fungsi Anda.

  • Untuk berbagi dependensi di beberapa fungsi. Setelah Anda membuat layer, Anda dapat menerapkannya ke sejumlah fungsi di akun Anda. Tanpa lapisan, Anda perlu menyertakan dependensi yang sama di setiap paket penerapan individu.

  • Untuk menggunakan editor kode konsol Lambda. Editor kode adalah alat yang berguna untuk menguji pembaruan kode fungsi minor dengan cepat. Namun, Anda tidak dapat menggunakan editor jika ukuran paket penerapan Anda terlalu besar. Menggunakan lapisan mengurangi ukuran paket Anda dan dapat membuka kunci penggunaan editor kode.

Diagram berikut menggambarkan perbedaan arsitektur tingkat tinggi antara dua fungsi yang berbagi dependensi. Satu menggunakan lapisan Lambda, dan yang lainnya tidak.

Perbedaan arsitektur antara dua fungsi Lambda yang tidak menggunakan lapisan, dan dua fungsi yang berbagi lapisan.

Saat Anda menambahkan layer ke fungsi, Lambda mengekstrak konten layer ke dalam /opt direktori di lingkungan eksekusi fungsi Anda. Semua runtime Lambda yang didukung secara native menyertakan jalur ke direktori tertentu di dalam direktori. /opt Ini memberi fungsi Anda akses ke konten lapisan Anda. Untuk informasi selengkapnya tentang jalur spesifik ini dan cara mengemas layer Anda dengan benar, lihatKemasan konten lapisan Anda.

Anda dapat menyertakan hingga lima lapisan per fungsi. Selain itu, Anda dapat menggunakan lapisan hanya dengan fungsi Lambda yang digunakan sebagai arsip file.zip. Untuk fungsi yang didefinisikan sebagai gambar kontainer, paketkan runtime pilihan Anda dan semua dependensi kode saat Anda membuat gambar kontainer. Untuk informasi selengkapnya, lihat Bekerja dengan lapisan dan ekstensi Lambda dalam gambar kontainer di Blog AWS Komputasi.

Cara menggunakan lapisan

Untuk membuat layer, paketkan dependensi Anda ke dalam file.zip, mirip dengan cara Anda membuat paket penerapan normal. Lebih khusus lagi, proses umum membuat dan menggunakan lapisan melibatkan tiga langkah ini:

Versi lapisan dan lapisan

Versi lapisan adalah snapshot yang tidak dapat diubah dari versi tertentu dari lapisan. Saat Anda membuat layer baru, Lambda membuat versi layer baru dengan nomor versi 1. Setiap kali Anda mempublikasikan pembaruan ke layer, Lambda menambah nomor versi dan membuat versi layer baru.

Setiap versi layer diidentifikasi oleh Amazon Resource Name (ARN) yang unik. Saat menambahkan lapisan ke fungsi, Anda harus menentukan versi lapisan yang tepat yang ingin Anda gunakan.