Pemicu fungsi

Setelah membuat dan men-deploy fungsi dengan Cloud Run, Anda dapat menetapkan fungsi untuk dieksekusi sebagai respons terhadap berbagai skenario dengan menentukan pemicu.

Halaman ini memberikan ringkasan pemicu yang didukung oleh fungsi Cloud Run.

Jenis pemicu

Secara default, semua fungsi yang di-deploy di Cloud Run adalah layanan yang di-deploy dari sumber Cloud Run yang memiliki endpoint HTTP (URL run.app).

Cara fungsi dipanggil atau dipicu bergantung pada jenis fungsi yang Anda tentukan saat menulis kode.

  • Pemicu CloudEvent Bereaksi terhadap peristiwa dalam project Google Cloud Anda dan sesuai dengan fungsi CloudEvents (juga disebut fungsi berbasis peristiwa). Anda harus menggunakan Eventarc, implementasi spesifikasi CloudEvents Google yang mendukung pembuatan arsitektur berbasis peristiwa, untuk memicu fungsi sebagai respons terhadap peristiwa yang ditentukan.
  • Pemicu HTTP: Bereaksi terhadap permintaan HTTP(S) dan sesuai dengan fungsi HTTP. Anda dapat menggunakan layanan Google Cloud lainnya (non-Eventarc) sebagai penyedia peristiwa untuk memanggil fungsi melalui permintaan HTTP(S).

Untuk memicu fungsi agar bereaksi terhadap peristiwa dalam project Google Cloud, Anda menentukan pemicu sebagai bagian dari deployment fungsi di konsol Google Cloud atau setelah fungsi di-deploy saat menggunakan gcloud CLI.

Anda tidak dapat mengikat fungsi yang sama ke lebih dari satu pemicu sekaligus, tetapi Anda dapat membuat peristiwa yang sama menyebabkan beberapa fungsi dieksekusi dengan men-deploy beberapa fungsi dengan setelan pemicu yang sama.

Contoh pemicu

Berikut adalah contoh pemicu yang didukung oleh fungsi Cloud Run:

Semua fungsi CloudEvents menggunakan Eventarc untuk pengiriman peristiwa. Pemicu Pub/Sub dan pemicu Cloud Storage diimplementasikan sebagai jenis pemicu Eventarc tertentu.

Pemicu tambahan menggunakan Pub/Sub dan webhook

Karena fungsi Cloud Run dapat dipicu oleh pesan pada topik Pub/Sub, Anda dapat mengintegrasikan fungsi Cloud Run dengan layanan Google lainnya yang mendukung Pub/Sub sebagai bus peristiwa. Selain itu, dengan menggunakan pemicu HTTP, Anda juga dapat berintegrasi dengan layanan apa pun yang menyediakan callback HTTP (webhook). Bagian berikut menjelaskan beberapa contoh integrasi.

Cloud Logging

Cloud Logging dapat merutekan log ke topik Pub/Sub, yang kemudian dapat dipakai oleh fungsi Cloud Run. Lihat Mengonfigurasi dan mengelola sink dalam dokumentasi Cloud Logging untuk mengetahui informasi selengkapnya.

Cloud Scheduler

Anda dapat menjadwalkan fungsi HTTP dengan membuat tugas Cloud Scheduler yang memicu tindakan menggunakan HTTP.

Anda juga dapat menjadwalkan fungsi CloudEvent jika fungsi harus dipicu secara langsung sebagai respons terhadap peristiwa dalam project Google Cloud; misalnya, saat pesan dipublikasikan ke topik Pub/Sub.

Cloud Tasks

Dengan tugas Target HTTP Cloud Tasks, Anda dapat menjalankan pengendali tugas di endpoint HTTP mana pun, sehingga fungsi HTTP dengan pemicu HTTP dapat digunakan sebagai pengendali tugas. Anda juga dapat menggunakan tugas untuk men-throttle atau membatasi kapasitas pemanggilan fungsi. Lihat Membuat tugas Target HTTP dalam dokumentasi Cloud Tasks untuk mengetahui informasi selengkapnya.

Gmail

Dengan menggunakan Push Notification API Gmail, Anda dapat mengirim peristiwa Gmail ke topik Pub/Sub dan menggunakannya dengan Cloud Run.