Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Mengelola revisi Fungsi Web
Revisi adalah snapshot yang tidak dapat diubah dari kode dan konfigurasi aplikasi Web Function Anda. Untuk mengubah kode Anda atau pengaturan revisi apa pun, sepertitimeoutSeconds,maxConcurrencyPerEnvironment, atauenvironmentVariables, Anda membuat revisi baru. Apakah revisi baru menerima lalu lintas tergantung pada mode penyebaran otomatis setiap titik akhir. Titik akhir dalam LatestRevisionmode merutekan semua lalu lintas ke revisi baru setelah menjadi Aktif. Titik akhir dalam mode Dinonaktifkan mempertahankan bobot revisi saat ini hingga Anda mengubahnya. Karena revisi tidak dapat diubah, Anda dapat memutar kembali dengan merutekan lalu lintas ke revisi sebelumnya. Revisi sebelumnya harus tetap Aktif, dan kode, kunci, peran, dan dependensi lainnya harus tetap tersedia. Untuk informasi tentang perutean lalu lintas antar revisi, lihat. Pola deployment
Properti revisi
Setiap revisi berisi konfigurasi berikut:
| Properti | Deskripsi | Default | Dapat diubah |
|---|---|---|---|
| RevisionID | ID unik yang dihasilkan Lambda saat Anda membuat revisi. | – | Tidak (dihasilkan) |
| RevisionARN | Nama Sumber Daya Amazon (ARN) dari revisi. | – | Tidak (dihasilkan) |
| FungsiARN | ARN dari Fungsi Web yang dimiliki revisi. | – | Tidak (dihasilkan) |
| negara | Status siklus hidup revisi (Pending,Active, atau). Failed Lihat perinciannya di Status revisi. |
– | Tidak (dikelola oleh Lambda) |
| StateReason | Deskripsi mengapa revisi dalam keadaan saat ini, misalnya penyebab suatu Failed negara. |
– | Tidak (dikelola oleh Lambda) |
| kesalahan | Daftar kesalahan yang ditemukan Lambda saat membuat atau membaca revisi. Setiap kesalahan memberi nama atribut yang terpengaruh dan menyertakan kode kesalahan dan pesan. Absen ketika revisi tidak memiliki kesalahan. | – | Tidak (dikelola oleh Lambda) |
| createDat | Stempel waktu saat revisi dibuat. | – | Tidak (dihasilkan) |
| deskripsi | Deskripsi opsional untuk revisi yang Anda berikan saat Anda membuatnya. | Tidak ada | Tidak (tidak dapat diubah) |
| BuildConfig | Kode dan runtime untuk revisi. Berisi codeConfig dan runtimeConfig pengaturan yang dijelaskan dalam baris berikut. |
– | Tidak (tidak dapat diubah) |
| CodeConfig | Lokasi paket penyebaran. Berisi s3Object pengaturan yang dijelaskan dalam baris berikut. Bagian daribuildConfig. |
– | Tidak (tidak dapat diubah) |
| Objek S3 | Lokasi Amazon S3 dari paket penyebaran. Berisibucket,key, dan versionId pengaturan yang dijelaskan dalam baris berikut. Lihat perinciannya di Menyebarkan kode Fungsi Web dari Amazon S3. Bagian daricodeConfig. |
– | Tidak (tidak dapat diubah) |
| bucket | Nama bucket Amazon S3 yang berisi paket penerapan. Bucket harus mengaktifkan versi S3. Bagian daris3Object. |
– | Tidak (tidak dapat diubah) |
| kunci | Kunci objek Amazon S3 dari paket penerapan. Bagian daris3Object. |
– | Tidak (tidak dapat diubah) |
| VersionID | ID versi objek Amazon S3. Tidak wajib. Jika Anda menghilangkannya, Lambda menggunakan versi terbaru dari objek pada waktu pembuatan. Either way, Lambda menyematkan revisi ke versi objek tertentu. Bagian daris3Object. |
Versi terbaru | Tidak (tidak dapat diubah) |
| RuntimeConfig | Konfigurasi runtime. Berisi runtime pengaturan yang dijelaskan di baris berikut. Bagian daribuildConfig. |
– | Tidak (tidak dapat diubah) |
| runtime | Pengidentifikasi runtime (misalnya,nodejs24.x). Untuk runtime yang didukung, lihatRuntime Fungsi Web Lambda. Meskipun pengidentifikasi runtime diperbaiki untuk revisi, runtime itu sendiri tidak dibekukan. Lambda secara otomatis menerapkan patch keamanan dan perbaikan bug ke runtime, sehingga pengenal (misalnya,nodejs24.x) selalu menyelesaikan ke versi patch terbaru. Lihat perinciannya di Penambalan runtime otomatis. Bagian dariruntimeConfig. |
– | Tidak (tidak dapat diubah) |
| ServiceConfig | Pengaturan runtime untuk revisi. BerisiexecutionRoleArn,timeoutSeconds,maxConcurrencyPerEnvironment,environmentVariables, dan telemetryConfig pengaturan yang dijelaskan dalam baris berikut. |
– | Tidak (tidak dapat diubah) |
| eksekusi RoleArn | ARN dari peran IAM yang diasumsikan oleh Fungsi Web saat runtime. Peran tersebut memberikan izin untuk mengakses AWS layanan dan sumber daya. Wajib. Lihat perinciannya di Peran eksekusi. Bagian dariserviceConfig. |
– | Tidak (tidak dapat diubah) |
| TimeoutSeconds | Waktu maksimum dalam hitungan detik yang dapat dijalankan oleh satu permintaan HTTP. Nilai yang valid: 3—900. Bagian dariserviceConfig. |
30 | Tidak (tidak dapat diubah) |
| maks ConcurrencyPerEnvironment | Jumlah maksimum permintaan HTTP bersamaan per lingkungan eksekusi. Nilai yang valid: 1—128. Bagian dariserviceConfig. |
64 | Tidak (tidak dapat diubah) |
| Variabel LingkunganVariabel | Key-value pasangan tersedia untuk aplikasi Anda saat runtime. Tetapkan per-revisi dan abadi setelah pembuatan. Bagian dariserviceConfig. |
Tidak ada | Tidak (tidak dapat diubah) |
| TelemetryConfig | Pengaturan telemetri untuk revisi. Berisi loggingConfig pengaturan yang dijelaskan dalam baris berikut. Jika Anda menghilangkantelemetryConfig, Lambda masih mengirimkan log aplikasi Anda ke grup log default. Bagian dariserviceConfig. |
Tidak ada | Tidak (tidak dapat diubah) |
| LoggingConfig | Konfigurasi logging untuk revisi. BerisilogGroup,applicationLogLevel, dan systemLogLevel pengaturan yang dijelaskan dalam baris berikut. Lihat perinciannya di Kontrol logging. Bagian daritelemetryConfig. |
Tidak ada | Tidak (tidak dapat diubah) |
| LogGroup | Grup CloudWatch log Amazon Logs yang menerima log Anda. Nama grup log yang dimulai dengan aws/ dicadangkan dan ditolak. Lihat perinciannya di Menggunakan grup log kustom. Bagian dariloggingConfig. |
/aws/lambda/web/ |
Tidak (tidak dapat diubah) |
| aplikasi LogLevel | Tingkat keparahan minimum log aplikasi Anda yang dikirim Lambda ke Amazon CloudWatch Logs. Nilai yang valid:TRACE,DEBUG,INFO,WARN,ERROR, danFATAL. Bagian dariloggingConfig. |
INFO |
Tidak (tidak dapat diubah) |
| sistem LogLevel | Tingkat keparahan minimum log Lambda-generated sistem yang dikirim Lambda ke Amazon CloudWatch Logs. Nilai-nilai yang valid: DEBUG, INFO, dan WARN. Bagian dariloggingConfig. |
INFO |
Tidak (tidak dapat diubah) |
| km KeyArn | ARN dari kunci yang dikelola pelanggan digunakan untuk mengenkripsi kode dan variabel lingkungan. Tidak wajib. Jika suatu MultiRegion atau PerRegion titik akhir merutekan lalu lintas ke revisi, gunakan kunci Multi-region dengan replika di setiap Wilayah titik akhir. Lihat perinciannya di Enkripsi saat istirahat untuk Fungsi Web. |
Tidak ada | Tidak (tidak dapat diubah) |
Semua properti revisi tidak dapat diubah setelah pembuatan. Untuk mengubah konfigurasi apa pun, buat revisi baru dengan nilai yang diperbarui.
Membuat revisi
Lambda membuat revisi saat Anda menelepon. CreateWebFunctionRevision Anda memberikan lokasi kode dan konfigurasi dalam permintaan. Revisi baru tidak menyalin pengaturan dari revisi yang ada. Tentukan setiap pengaturan yang ingin Anda pertahankan, termasuk variabel lingkungan. Pengaturan yang Anda hilangkan menggunakan defaultnya. Untuk memulai dari nilai saat ini, jalankan get-web-function-revision dan gunakan kembali buildConfig dan serviceConfig dengan perubahan Anda. Revisi baru dimulai dalam status Pending sementara Lambda mengunduh kode Anda dan menyiapkan artefak kode darinya. Ketika persiapan selesai, revisi beralih ke Aktif. Jika terjadi kesalahan selama persiapan, revisi bertransisi ke Gagal dan tidak dapat melayani lalu lintas. Untuk detail tentang setiap negara bagian, lihatStatus revisi.
Sebelum membuat revisi, unggah paket deployment .zip Anda ke bucket Amazon S3 berversi, dan dapatkan ARN dari peran eksekusi yang dapat diasumsikan oleh Lambda. Untuk detailnya, lihat Menyebarkan kode Fungsi Web dari Amazon S3 dan Peran eksekusi.
Untuk membuat revisi dengan kode yang diperbarui (AWS CLI)
-
Jalankan perintah berikut untuk membuat revisi baru. Ganti bucket S3, key, role ARN, dan nilai konfigurasi dengan milik Anda sendiri.
aws lambda-web create-web-function-revision \ --function-namemy-web-app\ --build-config '{ "codeConfig": { "s3Object": { "bucket": "my-bucket", "key": "my-app-v2.zip" } }, "runtimeConfig": { "runtime": "nodejs24.x" } }' \ --service-config '{ "executionRoleArn": "arn:aws:iam::111122223333:role/my-web-function-role" }'Perintah menggunakan objek berikut. Untuk setiap pengaturan dan defaultnya, lihatProperti revisi.
-
buildConfigberisicodeConfig, bucket Amazon S3 dan kunci paket penerapan Anda, danruntimeConfig, runtime (misalnya,).nodejs24.xKeduanya diperlukan. -
serviceConfigberisi ARNexecutionRoleArnyang diperlukan dari peran eksekusi yang diasumsikan oleh Fungsi Web Anda saat dijalankan. Itu juga bisa berisitimeoutSeconds,maxConcurrencyPerEnvironment,environmentVariables, dantelemetryConfig.
Perintah mengembalikan rincian tentang revisi baru, termasuk.
revisionIdRevisi dimulai dalam status Tertunda. -
-
Untuk mengonfirmasi bahwa revisi Aktif, jalankan perintah berikut. Ganti
my-web-appdengan nama fungsi Anda danrev-a1b2cdenganrevisionIddari respons.aws lambda-web get-web-function-revision \ --function-namemy-web-app\ --revision-idrev-a1b2cRevisi sudah siap kapan
state.ActiveJikastateyaFailed,stateReasonjelaskan penyebabnya. Lihat perinciannya di Status revisi.Tepat setelah Anda membuat revisi,
statebiasanyaPending. Untuk menunggu sampai selesaiActive, jalankanaws lambda-web wait web-function-revision-activedengan opsi yang sama.
Untuk membuat revisi dengan konfigurasi yang diperbarui (AWS CLI)
-
Untuk mengubah konfigurasi tanpa mengubah kode, tentukan lokasi kode yang sama dengan pengaturan baru. Contoh berikut mengubah batas waktu menjadi 60 detik dan menambahkan variabel lingkungan.
aws lambda-web create-web-function-revision \ --function-namemy-web-app\ --build-config '{ "codeConfig": { "s3Object": { "bucket": "my-bucket", "key": "my-app-v2.zip" } }, "runtimeConfig": { "runtime": "nodejs24.x" } }' \ --service-config '{ "executionRoleArn": "arn:aws:iam::111122223333:role/my-web-function-role", "timeoutSeconds": 60, "maxConcurrencyPerEnvironment": 32, "environmentVariables": { "DATABASE_URL": "my-database-endpoint", "LOG_LEVEL": "info" } }' -
Untuk mengonfirmasi bahwa revisi Aktif, jalankan perintah berikut. Ganti
my-web-appdengan nama fungsi Anda danrev-a1b2cdenganrevisionIddari respons.aws lambda-web get-web-function-revision \ --function-namemy-web-app\ --revision-idrev-a1b2cRevisi sudah siap kapan
state.ActiveJikastateyaFailed,stateReasonjelaskan penyebabnya. Lihat perinciannya di Status revisi.Tepat setelah Anda membuat revisi,
statebiasanyaPending. Untuk menunggu sampai selesaiActive, jalankanaws lambda-web wait web-function-revision-activedengan opsi yang sama.
Setelah membuat revisi, bagaimana lalu lintas mencapainya tergantung pada mode penyebaran otomatis titik akhir. Lihat perinciannya di Pola deployment.
Revisi daftar
Untuk melihat semua revisi untuk Fungsi Web, gunakan perintah berikut:
aws lambda-web list-web-function-revisions \ --function-namemy-web-app
Responsnya mencakup pengidentifikasi, status, stempel waktu pembuatan, dan ringkasan konfigurasi setiap revisi. Gunakan pengenal revisi saat memperbarui bobot revisi titik akhir atau saat menghapus revisi.
Menghapus revisi
Anda dapat menghapus revisi yang tidak lagi diperlukan. Menghapus revisi secara permanen menghapusnya. Paket penerapan Anda di Amazon S3 tidak terpengaruh.
penting
Anda tidak dapat menghapus revisi yang mengarahkan lalu lintas titik akhir mana pun (revisi dengan bobot bukan nol pada titik akhir apa pun). Hapus revisi dari bobot revisi setiap titik akhir sebelum menghapusnya.
Untuk menghapus revisi (AWS CLI)
-
Jalankan perintah berikut untuk menghapus revisi tertentu.
aws lambda-web delete-web-function-revision \ --function-namemy-web-app\ --revision-idrev-a1b2c
Batas revisi dan pembersihan otomatis
Lambda menggunakan 50 revisi per Fungsi Web sebagai target pembersihan otomatisnya. Targetnya tidak bisa disesuaikan. Di konsol Service Quotas, muncul sebagai Revisi per Fungsi Web (). web-function-revisions-per-function
Anda tidak perlu menghapus revisi lama untuk tetap berada dalam target pembersihan. Ketika revisi baru menjadi Aktif dan jumlah revisi total melebihi target pembersihan, Lambda secara otomatis menghapus revisi tertua yang tidak digunakan. Revisi sedang digunakan ketika titik akhir merutekan lalu lintas ke sana, termasuk ketika direferensikan di mana saja di regionalEndpoints properti titik akhir atau titik akhir. MultiRegion PerRegion Lambda tidak secara otomatis menghapus revisi yang sedang digunakan atau revisi yang baru saja menjadi Aktif. Pembersihan tidak sinkron. Jumlah revisi mungkin untuk sementara melebihi 50 sementara revisi yang lebih lama masih digunakan atau pembersihan sedang berlangsung. Revisi yang Anda hapus dari semua bobot revisi, seperti target rollback, dapat dihapus dengan pembersihan.
Anda juga dapat menghapus revisi secara manual kapan saja. Untuk prosedurnya, lihat bagian sebelumnya.
Paket penyebaran setiap revisi dapat mencapai 512 MB (unzip). Karena Anda menyediakan paket deployment di bucket Amazon S3 Anda sendiri dan Lambda mereferensikan kode Anda langsung dari bucket, tidak ada kuota penyimpanan kode terpisah untuk Fungsi Web. Lihat perinciannya di Menyebarkan kode Fungsi Web dari Amazon S3.
Mengkonfigurasi pengaturan revisi
Semua konfigurasi diatur per revisi dan tidak dapat diubah setelah pembuatan. Untuk mengubah pengaturan apa pun, buat revisi baru dengan nilai yang diperbarui. Pengaturan berikut mengontrol perilaku eksekusi.
Untuk pengaturan batas waktu permintaan dan variabel lingkungan, lihat Batas waktu permintaan dan Variabel lingkungan masukMengkonfigurasi Fungsi Web Lambda.
Konkurensi per lingkungan
maxConcurrencyPerEnvironmentPengaturan mengontrol berapa banyak permintaan HTTP yang ditangani oleh lingkungan eksekusi tunggal pada saat yang bersamaan. Nilai yang valid adalah 1-128. Defaultnya adalah 64.
Untuk I/O-bound aplikasi (banyak permintaan menunggu database atau panggilan jaringan), nilai yang lebih tinggi memaksimalkan pemanfaatan. Untuk CPU-bound aplikasi, nilai yang lebih rendah mengurangi pertengkaran. Untuk panduan lebih lanjut, lihatPerilaku penskalaan untuk Fungsi Web Lambda.