Pemicu adalah mekanisme untuk memicu eksekusi fungsi. Dalam model komputasi berbasis peristiwa, sumber peristiwa bertindak sebagai produsen peristiwa, sedangkan fungsi berperan sebagai pemroses peristiwa. Pemicu digunakan untuk mengelola sumber peristiwa secara terpusat. Ketika peristiwa yang sesuai dengan aturan pemicu terjadi, sumber peristiwa akan memanggil fungsi yang terkait.
Apa itu pemicu?
Function Compute menyediakan model komputasi di mana eksekusi fungsi dipicu oleh peristiwa. Fungsi dapat dipicu melalui Konsol Function Compute, SDK, atau sumber peristiwa lainnya. Anda dapat membuat pemicu dalam suatu fungsi, yang mencakup serangkaian aturan. Ketika peristiwa yang sesuai dengan aturan tersebut terjadi, sumber peristiwa akan memicu fungsi terkait.
Untuk memicu beberapa fungsi sekaligus, Anda dapat menggunakan Function Compute bersama dengan CloudFlow. Anda dapat mengonfigurasi fungsi untuk memulai proses CloudFlow, yang kemudian dapat memanggil beberapa fungsi dalam alurnya. Untuk detail lebih lanjut, lihat demo.
Contoh skenario
Skenario 1: Memicu fungsi ketika status gambar di OSS berubah
Aplikasi menyimpan gambar di Object Storage Service (OSS). Anda dapat memanggil fungsi untuk mengunduh dan memproses gambar tersebut, lalu menyimpan hasilnya di OSS atau layanan lainnya. Jika OSS dapat mendeteksi gambar baru secara otomatis dan memanggil fungsi terkait, Anda tidak perlu melakukan pemanggilan manual. Untuk ini, Anda dapat mengonfigurasi pemicu OSS untuk mendeteksi gambar baru dan memicu fungsi di Function Compute. Setelah dikonfigurasi, fungsi akan dipicu untuk mengunduh dan memproses gambar saat ada unggahan baru.
Skenario 2: Memicu fungsi ketika log di Simple Log Service diperbarui
Aplikasi menggunakan Simple Log Service untuk mengumpulkan log secara berkala. Anda dapat memanggil fungsi untuk menganalisis log tambahan. Jika Simple Log Service dapat mendeteksi log yang diperbarui dan memanggil fungsi terkait secara otomatis, Anda tidak perlu memanggil fungsi secara manual. Untuk ini, Anda dapat mengonfigurasi pemicu Simple Log Service untuk mendeteksi pembaruan log dan memicu fungsi di Function Compute. Setelah dikonfigurasi, fungsi akan dipicu untuk memproses log tambahan saat terjadi pembaruan.
Skenario 3: Memicu fungsi pada waktu tertentu
Sebagai contoh, aplikasi perlu mengumpulkan data setiap jam. Anda dapat memanggil fungsi setiap jam untuk mengumpulkan dan memproses data tersebut. Jika fungsi di Function Compute dapat dieksekusi secara otomatis setiap jam, Anda tidak perlu memanggil fungsi secara manual. Untuk ini, Anda dapat mengonfigurasi pemicu waktu untuk mendeteksi interval waktu dan memicu fungsi di Function Compute. Setelah dikonfigurasi, fungsi akan dipicu secara otomatis untuk mengumpulkan dan memproses data pada interval yang ditentukan.
Jenis pemicu
Pemicu di Function Compute dikategorikan menjadi dua jenis berdasarkan metode integrasi:
Pemicu terintegrasi dua arah: Pemicu yang dapat dikonfigurasi baik di Function Compute maupun di sumber peristiwa.
Pemicu peristiwa untuk layanan Alibaba Cloud: Pemicu yang dapat dikonfigurasi di Function Compute dan EventBridge. Tidak diperlukan konfigurasi di sumber peristiwa.
Pemicu juga dapat diklasifikasikan menjadi sinkron dan asinkron berdasarkan cara fungsi dipanggil. Berikut adalah perbedaan antara kedua metode tersebut. Untuk informasi lebih lanjut, lihat Pemanggilan Sinkron.
Pemanggilan sinkron: Hasil dikembalikan setelah peristiwa diproses oleh fungsi. Contohnya, pemanggilan fungsi di Konsol Function Compute adalah sinkron.
Pemanggilan asinkron: Hasil dikembalikan setelah peristiwa ditulis ke antrian internal Function Compute. Function Compute memastikan bahwa pesan diproses secara andal.
Pemicu terintegrasi dua arah
Pemicu | Metode pemanggilan | Referensi | |
HTTP triggers | Synchronous and asynchronous invocations | ||
Pemicu waktu | Pemanggilan asinkron | ||
Pemicu OSS | Pemanggilan asinkron | ||
Pemicu Simple Log Service | Pemanggilan sinkron | ||
Pemicu CDN Alibaba Cloud | Pemanggilan sinkron | ||
Pemicu Tablestore | Pemanggilan sinkron | ||
Simple Message Queue (formerly MNS) topik pemicu | Pemanggilan asinkron | ||
Pemicu berbasis EventBridge | Simple Message Queue (formerly MNS) antrian pemicu | Pemanggilan sinkron dan asinkron | Ikhtisar antrian pemicu Simple Message Queue (sebelumnya MNS) |
ApsaraMQ for RocketMQ/Self-managed Apache RocketMQ triggers | Pemanggilan sinkron dan asinkron | ||
Pemicu ApsaraMQ for RabbitMQ | Pemanggilan sinkron dan asinkron | ||
Pemicu ApsaraMQ for Kafka | Pemanggilan sinkron dan asinkron | ||
Pemicu ApsaraMQ for MQTT | Pemanggilan sinkron dan asinkron | ||
Pemicu Data Transmission Service (DTS) | Pemanggilan sinkron dan asinkron | ||
One-way integrated triggers
Pemicu | Metode pemanggilan | Referensi |
API Gateway triggers | Synchronous invocations | |
ALB triggers | Synchronous and asynchronous invocations |
Pemicu peristiwa untuk layanan Alibaba Cloud
Pemicu | Metode pemanggilan | Referensi |
Pemicu peristiwa untuk layanan Alibaba Cloud | Pemanggilan sinkron dan asinkron |