Function Compute mendukung penggunaan Application Load Balancer (ALB) sebagai sumber event dengan menambahkan kelompok server bertipe Function Compute ke instans ALB, sehingga ALB dapat meneruskan permintaan ke Function Compute dan memicu pemanggilan fungsi.
Ikhtisar
ALB mendukung penambahan Function Compute sebagai layanan backend. Saat ALB menerima permintaan, permintaan tersebut diteruskan ke Function Compute dan memicu pemanggilan fungsi. Setelah fungsi selesai dijalankan, Function Compute mengembalikan hasilnya sebagai respons kepada pemohon.
ALB dan Function Compute (FC) berkomunikasi secara aman melalui jaringan internal Alibaba Cloud.
Fitur utama
-
Dukungan arsitektur tanpa server: Menambahkan Function Compute sebagai layanan backend ke ALB menyederhanakan pembuatan aplikasi tanpa server serta mengurangi biaya operasional dan pemeliharaan (O&M).
-
Skalabilitas elastis otomatis: Function Compute secara otomatis menyesuaikan sumber daya komputasi naik atau turun berdasarkan lalu lintas, memastikan kapasitas yang cukup selama periode puncak dan menghemat sumber daya saat lalu lintas rendah.
-
Ketersediaan tinggi dan toleransi kesalahan: ALB dan Function Compute bersama-sama menyediakan kemampuan ketersediaan tinggi dan pemulihan bencana untuk memastikan operasi aplikasi yang stabil.
Skenario
-
Layanan mikro: Gunakan kemampuan routing lanjutan ALB untuk mengarahkan permintaan ke berbagai fungsi layanan mikro. Function Compute melakukan penskalaan dinamis untuk menangani permintaan konkurensi tinggi, meningkatkan elastisitas dan keandalan sistem.
-
Pemrosesan data real-time: Arahkan permintaan pemrosesan data melalui ALB ke fungsi yang sesuai. Function Compute memungkinkan pemrosesan data real-time hanya dengan beberapa baris kode dan konfigurasi sederhana.
-
Pemrosesan berbasis event: ALB menerima permintaan yang dipicu oleh event dan meneruskannya ke fungsi terkait. Function Compute memproses event tersebut dan menyimpan hasilnya di database atau mengirimkannya ke layanan lain, sehingga memungkinkan alur kerja dinamis berbasis event.
-
Pemrosesan gambar dan video: ALB menerima permintaan unggah gambar atau video dan mengarahkannya ke fungsi pemrosesan khusus. Function Compute menyediakan sumber daya komputasi elastis yang secara otomatis diskalakan sesuai beban kerja, memastikan penyelesaian tugas secara efisien.
Batasan
-
Untuk wilayah tempat ALB mendukung penambahan Function Compute sebagai layanan backend, lihat Wilayah yang mendukung penyambungan Function Compute ke ALB.
-
Instans ALB dan fungsi harus berada di wilayah yang sama.
-
Kelompok server bertipe Function Compute ALB hanya mendukung satu fungsi sebagai server backend.
-
Jika Handler Type untuk Function Compute 2.0 diatur ke Process event requests, Anda harus mengonfigurasi pemicu HTTP saat mengaitkan fungsi dengan ALB.
Contoh skenario
Sebuah perusahaan e-commerce menerapkan ALB di wilayah Alibaba Cloud untuk menangani volume besar permintaan pengguna. Seiring pertumbuhan bisnis dan peningkatan lalu lintas pengguna, perusahaan membutuhkan cara yang fleksibel dan efisien untuk mengelola tugas-tugas seperti pembuatan konten dinamis, analisis perilaku pengguna, dan rekomendasi personalisasi.
Untuk memenuhi kebutuhan tersebut, perusahaan menggabungkan layanan Function Compute Alibaba Cloud dengan ALB. Integrasi ini memungkinkan penanganan tugas-tugas tersebut secara efisien dan secara signifikan meningkatkan pengalaman pengguna.
Prasyarat
Anda telah membuat instans ALB.
Prosedur
Langkah 1: Buat fungsi
Masuk ke Konsol Function Compute. Di panel navigasi sebelah kiri, pilih .
Di bilah navigasi atas, pilih wilayah. Pada halaman Functions, klik Create Function.
-
Di halaman detail fungsi, buka tab Code dan klik Test Function.
Setelah eksekusi berhasil, lihat hasil fungsi di bagian Response. Dalam contoh ini, hasil yang dikembalikan adalah
hello world.
Pada halaman Create Function, pilih tipe Event Function, pilih runtime, gunakan kode contoh default, biarkan semua parameter lain pada nilai default-nya, lalu klik Create. Topik ini menggunakan runtime Node.js bawaan sebagai contoh.
Langkah 2: Buat kelompok server bertipe Function Compute
-
Di Konsol Application Load Balancer (ALB), di panel navigasi sebelah kiri, pilih Server Groups. Di bilah menu atas, pilih wilayah tujuan dan klik Create Server Group.
-
Pada kotak dialog Create Server Group, atur Server Group Type menjadi Function Compute Type, lalu klik Create.
PentingSaat pemeriksaan kesehatan ALB diaktifkan, setiap probe pemeriksaan kesehatan dihitung sebagai permintaan Function Compute dan dikenai biaya.
Masukkan nama di Server Group Name, misalnya
fc3.0. -
Pada kotak dialog The server group is created, klik Add Backend Server.
-
Pada panel Add Backend Server, pilih fungsi yang telah Anda buat dan klik OK.
Topik ini menggunakan Configuration Mode Select Resource. Untuk Function Name, pilih fungsi yang telah Anda buat. Atur Version ke LATEST. Untuk menggunakan Configure by ARN, terlebih dahulu dapatkan ARN fungsi.
Langkah 3: Konfigurasi pendengar
-
Di panel navigasi sebelah kiri, pilih dan klik ID instans.
-
Klik tab Listener, lalu klik Create Listener.
-
Pada halaman wizard Configure Listener, konfigurasikan protokol dan port pendengar, lalu klik Next.
Topik ini menggunakan protokol HTTP dan port 80. Biarkan parameter pendengar HTTP lainnya pada nilai default atau sesuaikan sesuai kebutuhan.
-
Pada halaman wizard Server Group, pada daftar drop-down Server Group, pilih Function Compute Type, pilih kelompok server target Anda, lalu klik Next.
-
Pada halaman wizard Configuration Review, konfirmasi pengaturan Anda dan klik Submit.
Langkah 4: Uji konektivitas
Setelah menyelesaikan langkah-langkah sebelumnya, Function Compute dan ALB telah menjalin koneksi. Anda dapat membuka jendela command line dan menjalankan perintah curl <nama domain instans ALB> untuk menguji konektivitas antara ALB dan Function Compute.
-
Sebelum menjalankan perintah berikut, ganti
alb-n9p0q18eh2pbw****.{region_id}.alb.aliyuncsslb.comdengan nama domain instans ALB yang sebenarnya. -
Jika Anda mengakses ALB melalui jaringan pribadi, pastikan VPC jaringan Anda saat ini sesuai dengan VPC instans ALB.
-
Jika Anda telah mengonfigurasi resolusi nama domain untuk nama domain instans ALB dan mengikat nama domain kustom, ganti
alb-n9p0q18eh2pbw****.{region_id}.alb.aliyuncsslb.comdengan nama domain kustom Anda.
curl alb-n9p0q18eh2pbw****.{region_id}.alb.aliyuncsslb.com
Jika Anda menerima output berikut, ALB berhasil meneruskan permintaan ke Function Compute dan memicu fungsi tersebut.
curl alb-n9p0q18elxxx.alb.aliyuncsslb.com
hello world
Informasi tambahan
-
Dalam skenario produksi, gunakan nama domain kustom. Konfigurasikan resolusi Rekaman CNAME untuk mengarahkan nama domain kustom Anda ke nama domain instans ALB. Setelah pengaturan selesai, akses fungsi menggunakan nama domain kustom Anda. Sebelum mengikat nama domain kustom, terlebih dahulu daftarkan nama domain dan selesaikan proses Pendaftaran ICP.
-
Saat membuat kelompok server, jika pemeriksaan kesehatan diaktifkan, setiap probe pemeriksaan kesehatan dihitung sebagai permintaan Function Compute dan dikenai biaya.