View a markdown version of this page

Pilih metode untuk memanggil fungsi Lambda Anda menggunakan permintaan HTTP - AWS Lambda

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

Pilih metode untuk memanggil fungsi Lambda Anda menggunakan permintaan HTTP

Banyak kasus penggunaan umum untuk Lambda melibatkan memanggil fungsi Anda menggunakan permintaan HTTP. Misalnya, Anda mungkin ingin aplikasi web untuk memanggil fungsi Anda melalui permintaan browser. Fungsi lambda juga dapat digunakan untuk membuat REST API penuh, menangani interaksi pengguna dari aplikasi seluler, memproses data dari layanan eksternal melalui panggilan HTTP, atau membuat webhook khusus.

Bagian berikut menjelaskan pilihan Anda untuk memanggil Lambda melalui HTTP dan memberikan informasi untuk membantu Anda membuat keputusan yang tepat untuk kasus penggunaan khusus Anda.

Apa pilihan Anda saat memilih metode pemanggilan HTTP?

Lambda menawarkan dua metode utama untuk memanggil fungsi menggunakan permintaan HTTP - fungsi URL dan API Gateway. Perbedaan utama antara kedua opsi ini adalah sebagai berikut:

  • URL fungsi Lambda menyediakan titik akhir HTTP langsung yang sederhana untuk fungsi Lambda. Mereka dioptimalkan untuk kesederhanaan dan efektivitas biaya dan menyediakan jalur tercepat untuk mengekspos fungsi Lambda melalui HTTP.

  • API Gateway adalah layanan yang lebih canggih untuk membangun API berfitur lengkap. API Gateway dioptimalkan untuk membangun dan mengelola API produksi dalam skala besar dan menyediakan alat komprehensif untuk keamanan, pemantauan, dan manajemen lalu lintas.

Rekomendasi jika Anda sudah mengetahui kebutuhan Anda

Jika Anda sudah jelas tentang persyaratan Anda, berikut adalah rekomendasi dasar kami:

Kami merekomendasikan URL fungsi untuk aplikasi sederhana atau pembuatan prototipe di mana Anda hanya memerlukan metode dan request/response penanganan otentikasi dasar dan di mana Anda ingin meminimalkan biaya dan kompleksitas.

API Gateway adalah pilihan yang lebih baik untuk aplikasi produksi dalam skala besar atau untuk kasus di mana Anda memerlukan fitur yang lebih canggih seperti dukungan Deskripsi OpenAPI, pilihan opsi otentikasi, nama domain khusus, atau request/response penanganan kaya termasuk throttling, caching, dan transformasi. request/response

Apa yang harus dipertimbangkan ketika memilih metode untuk memanggil fungsi Lambda Anda

Saat memilih antara URL fungsi dan API Gateway, Anda perlu mempertimbangkan faktor-faktor berikut:

  • Kebutuhan otentikasi Anda, seperti apakah Anda memerlukan OAuth atau Amazon Cognito untuk mengotentikasi pengguna

  • Persyaratan penskalaan Anda dan kompleksitas API yang ingin Anda terapkan

  • Apakah Anda memerlukan fitur lanjutan seperti validasi permintaan dan request/response pemformatan

  • Persyaratan pemantauan Anda

  • Sasaran biaya Anda

Dengan memahami faktor-faktor ini, Anda dapat memilih opsi yang paling menyeimbangkan persyaratan keamanan, kompleksitas, dan biaya Anda.

Informasi berikut merangkum perbedaan utama antara kedua opsi.

  • URL fungsi menyediakan opsi otentikasi dasar melalui AWS Identity and Access Management (IAM). Anda dapat mengonfigurasi titik akhir Anda menjadi publik (tanpa otentikasi) atau untuk memerlukan otentikasi IAM. Dengan otentikasi IAM, Anda dapat menggunakan AWS kredenSIAL standar atau peran IAM untuk mengontrol akses. Meskipun mudah diatur, pendekatan ini memberikan opsi terbatas dibandingkan dengan metode otentikasi lainnya.

  • API Gateway menyediakan akses ke berbagai opsi otentikasi yang lebih komprehensif. Selain otentikasi IAM, Anda dapat menggunakan otorisasi Lambda (logika otentikasi khusus), kumpulan pengguna Amazon Cognito, dan alur. OAuth2.0 Fleksibilitas ini memungkinkan Anda menerapkan skema otentikasi yang kompleks, termasuk penyedia otentikasi pihak ketiga, otentikasi berbasis token, dan otentikasi multi-faktor.

  • URL fungsi menyediakan permintaan HTTP dasar dan penanganan respons. Mereka mendukung metode HTTP standar dan menyertakan dukungan cross-origin resource sharing (CORS) bawaan. Meskipun mereka dapat menangani muatan JSON dan parameter kueri secara alami, mereka tidak menawarkan transformasi permintaan atau kemampuan validasi. Penanganan respons juga mudah — klien menerima respons dari fungsi Lambda Anda persis seperti yang dikembalikan Lambda.

  • API Gateway menyediakan kemampuan penanganan permintaan dan respons yang canggih. Anda dapat menentukan validator permintaan, mengubah permintaan dan respons menggunakan templat pemetaan, mengatur request/response header, dan menerapkan caching respons. API Gateway juga mendukung payload biner dan nama domain khusus dan dapat memodifikasi respons sebelum mencapai klien. Anda dapat mengatur model untuk request/response validasi dan transformasi menggunakan Skema JSON.

  • URL fungsi dapat diskalakan secara langsung dengan batas konkurensi fungsi Lambda Anda dan menangani lonjakan lalu lintas dengan menskalakan fungsi Anda hingga batas konkurensi maksimum yang dikonfigurasi. Setelah batas itu tercapai, Lambda menanggapi permintaan tambahan dengan tanggapan HTTP 429. Tidak ada mekanisme antrian bawaan, jadi penanganan penskalaan sepenuhnya tergantung pada konfigurasi fungsi Lambda Anda. Secara default, fungsi Lambda memiliki batas 1.000 eksekusi bersamaan per. Wilayah AWS

  • API Gateway menyediakan kemampuan penskalaan tambahan di atas penskalaan Lambda sendiri. Ini termasuk antrian permintaan bawaan dan kontrol pelambatan, memungkinkan Anda mengelola lonjakan lalu lintas dengan lebih anggun. API Gateway dapat menangani hingga 10.000 permintaan per detik per wilayah secara default, dengan kapasitas burst 5.000 permintaan per detik. Ini juga menyediakan alat untuk membatasi permintaan di berbagai tingkat (API, tahap, atau metode) untuk melindungi backend Anda.

  • URL fungsi menawarkan pemantauan dasar melalui CloudWatch metrik Amazon, termasuk jumlah permintaan, latensi, dan tingkat kesalahan. Anda mendapatkan akses ke metrik dan log Lambda standar, yang menunjukkan permintaan mentah yang masuk ke fungsi Anda. Meskipun ini memberikan visibilitas operasional yang penting, metrik difokuskan terutama pada eksekusi fungsi.

  • API Gateway menyediakan kemampuan pemantauan komprehensif termasuk metrik terperinci, pencatatan, dan opsi pelacakan. Anda dapat memantau panggilan API, latensi, tingkat kesalahan, dan hit/miss tingkat cache CloudWatch. API Gateway juga terintegrasi dengan penel AWS X-Ray usuran terdistribusi dan menyediakan format logging yang dapat disesuaikan.

  • URL fungsi mengikuti model penetapan harga Lambda standar — Anda hanya membayar untuk pemanggilan fungsi dan waktu komputasi. Tidak ada biaya tambahan untuk titik akhir URL itu sendiri. Ini menjadikannya pilihan hemat biaya untuk API sederhana atau aplikasi dengan lalu lintas rendah jika Anda tidak memerlukan fitur tambahan API Gateway.

  • API Gateway menawarkan tingkat gratis yang mencakup satu juta panggilan API yang diterima untuk REST API dan satu juta panggilan API yang diterima untuk API HTTP. Setelah ini, API Gateway mengenakan biaya untuk panggilan API, transfer data, dan caching (jika diaktifkan). Lihat halaman harga API Gateway untuk memahami biaya untuk kasus penggunaan Anda sendiri.

  • URL fungsi dirancang untuk kesederhanaan dan integrasi Lambda langsung. Mereka mendukung titik akhir HTTP dan HTTPS, menawarkan dukungan CORS bawaan, dan menyediakan titik akhir dual-stack (IPv4 dan IPv6). Meskipun mereka tidak memiliki fitur canggih, mereka unggul dalam skenario di mana Anda memerlukan cara cepat dan mudah untuk mengekspos fungsi Lambda melalui HTTP.

  • API Gateway mencakup banyak fitur tambahan seperti versi API, manajemen tahap, kunci API untuk rencana penggunaan, dokumentasi API melalui Swagger/OpenAPI, API, WebSocket API pribadi dalam VPC, dan integrasi WAF untuk keamanan tambahan. Ini juga mendukung penerapan burung kenari, integrasi tiruan untuk pengujian, dan integrasi dengan yang lain Layanan AWS di luar Lambda.

Pilih metode untuk memanggil fungsi Lambda Anda

Sekarang setelah Anda membaca tentang kriteria untuk memilih antara URL fungsi Lambda dan API Gateway dan perbedaan utama di antara keduanya, Anda dapat memilih opsi yang paling sesuai dengan kebutuhan Anda dan menggunakan sumber daya berikut untuk membantu Anda mulai menggunakannya.

Function URLs
Memulai dengan URL fungsi dengan sumber daya berikut
  1. Buka halaman https://console.aws.amazon.com/lambda/home#/functions fungsi konsol Lambda.

  2. Buka panel bantuan dengan memilih ikon di sudut kanan atas layar.

    Diagram yang menunjukkan toolbar konsol Lambda dan ikon panel bantuan di sudut kanan atas
  3. Pilih Tutorial.

  4. Di Buat aplikasi web sederhana, pilih Mulai tutorial.

API Gateway
Memulai Lambda dan API Gateway dengan sumber daya berikut