Mengonfigurasi konkurensi terpesan - AWS Lambda

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

Mengonfigurasi konkurensi terpesan

Di Lambda, konkurensi adalah jumlah permintaan dalam penerbangan yang saat ini ditangani oleh fungsi Anda. Ada dua tipe kontrol konkurensi yang tersedia:

  • Konkurensi cadangan - Ini mewakili jumlah maksimum instans bersamaan yang dialokasikan ke fungsi Anda. Ketika fungsi sudah memiliki konkurensi terpesan, tidak ada fungsi lain yang dapat menggunakan konkurensi tersebut. Mengkonfigurasi konkurensi cadangan untuk suatu fungsi tidak menimbulkan biaya tambahan.

  • Konkurensi yang disediakan — Ini adalah jumlah lingkungan eksekusi pra-inisialisasi yang dialokasikan untuk fungsi Anda. Lingkungan eksekusi ini siap merespons segera permintaan fungsi yang masuk. Mengkonfigurasi konkurensi yang disediakan menimbulkan biaya tambahan untuk Anda. Akun AWS

Topik ini merinci cara mengelola dan mengonfigurasi konkurensi cadangan. Untuk gambaran konseptual dari dua jenis kontrol konkurensi ini, lihat Konkurensi cadangan dan konkurensi yang disediakan. Untuk informasi tentang mengonfigurasi konkurensi yang disediakan, lihat. Mengonfigurasi konkurensi yang tersedia

catatan

Fungsi Lambda yang ditautkan ke pemetaan sumber peristiwa Amazon MQ memiliki konkurensi maksimum default. Untuk Apache Active MQ, jumlah maksimum instans bersamaan adalah 5. Untuk Rabbit MQ, jumlah maksimum instans bersamaan adalah 1. Menyetel konkurensi cadangan atau yang disediakan untuk fungsi Anda tidak mengubah batasan ini. Untuk meminta peningkatan konkurensi maksimum default saat menggunakan Amazon MQ, hubungi. AWS Support

Mengonfigurasi konkurensi terpesan

Anda dapat mengonfigurasi setelan konkurensi cadangan untuk suatu fungsi menggunakan konsol Lambda atau API Lambda.

Untuk mencadangkan konkurensi untuk fungsi (konsol)
  1. Buka halaman Fungsi di konsol Lambda.

  2. Pilih fungsi yang ingin Anda pesan konkurensi.

  3. Pilih Konfigurasi, lalu pilih Konkurensi.

  4. Dalam Konkurensi, pilih Edit.

  5. Pilih Pesan konkurensi. Masukkan jumlah konkurensi yang dipesan untuk fungsi tersebut.

  6. Pilih Simpan.

Anda dapat melakukan reservasi hingga nilai konkurensi akun Unreserved dikurangi 100. 100 unit konkurensi yang tersisa adalah untuk fungsi yang tidak menggunakan konkurensi cadangan. Misalnya, jika akun Anda memiliki batas konkurensi 1.000, Anda tidak dapat memesan semua 1.000 unit konkurensi ke satu fungsi.

Terjadi kesalahan jika Anda mencoba memesan terlalu banyak konkurensi.

Pemesanan konkurensi untuk suatu fungsi memengaruhi kumpulan konkurensi yang tersedia untuk fungsi lain. Misalnya, jika Anda memesan 100 unit konkurensi untukfunction-a, fungsi lain di akun Anda harus berbagi 900 unit konkurensi yang tersisa, bahkan jika function-a tidak menggunakan semua 100 unit konkurensi cadangan.

Untuk sengaja membatasi fungsi, atur konkurensi cadangannya ke 0. Ini menghentikan fungsi Anda dari memproses peristiwa apa pun hingga Anda menghapus batasnya.

Untuk mengonfigurasi konkurensi cadangan dengan Lambda API, gunakan operasi API berikut.

Misalnya, untuk mengonfigurasi konkurensi cadangan dengan AWS Command Line Interface (CLI), gunakan put-function-concurrency perintah. Perintah berikut menyimpan 100 unit konkurensi untuk fungsi bernamamy-function:

aws lambda put-function-concurrency --function-name my-function \ --reserved-concurrent-executions 100

Anda akan melihat output yang terlihat seperti berikut:

{ "ReservedConcurrentExecutions": 100 }

Mengonfigurasi konkurensi dengan API Lambda

Jika fungsi Anda saat ini melayani lalu lintas, Anda dapat dengan mudah melihat metrik konkurensi menggunakan CloudWatch metrik. Secara khusus, ConcurrentExecutions metrik menunjukkan jumlah pemanggilan bersamaan untuk setiap fungsi di akun Anda.

Grafik yang menunjukkan konkurensi untuk suatu fungsi dari waktu ke waktu.

Grafik sebelumnya menunjukkan bahwa fungsi ini melayani rata-rata 5 hingga 10 permintaan bersamaan pada waktu tertentu, dan memuncak pada 20 permintaan pada hari biasa. Misalkan ada banyak fungsi lain di akun Anda. Jika fungsi ini sangat penting untuk aplikasi Anda dan Anda tidak ingin membatalkan permintaan apa pun, gunakan angka yang lebih besar dari atau sama dengan 20 sebagai pengaturan konkurensi cadangan Anda.

Atau, ingatlah bahwa Anda juga dapat menghitung konkurensi menggunakan rumus berikut:

Concurrency = (average requests per second) * (average request duration in seconds)

Mengalikan permintaan rata-rata per detik dengan durasi permintaan rata-rata dalam hitungan detik memberi Anda perkiraan kasar tentang berapa banyak konkurensi yang perlu Anda pesan. Anda dapat memperkirakan permintaan rata-rata per detik menggunakan Invocation metrik, dan durasi permintaan rata-rata dalam detik menggunakan Duration metrik. Lihat Bekerja dengan metrik fungsi Lambda untuk detail selengkapnya.