Pemicu Pub/Sub (generasi ke-1)
Dalam fungsi Cloud Run, pemicu Pub/Sub memungkinkan fungsi dipanggil sebagai respons terhadap pesan Pub/Sub. Saat menentukan pemicu Pub/Sub untuk suatu fungsi, Anda juga menentukan topik Pub/Sub. Fungsi Anda akan dipanggil setiap kali pesan dipublikasikan ke topik yang ditentukan.
Agar fungsi dapat menggunakan pemicu Pub/Sub, pemicu harus diimplementasikan sebagai fungsi berbasis peristiwa:
Jika Anda menggunakan fungsi CloudEvent, data peristiwa Pub/Sub diteruskan ke fungsi Anda dalam format CloudEvents dan payload data CloudEvent berjenis
MessagePublishedData
.Jika Anda menggunakan fungsi latar belakang, payload data peristiwa Pub/Sub akan diteruskan langsung ke fungsi Anda dalam format
PubsubMessage
.
Repositori Google Events berisi resource tambahan untuk menangani data peristiwa.
Deployment
Anda dapat menentukan pemicu Pub/Sub saat men-deploy fungsi. Lihat Deploy fungsi Cloud Run untuk petunjuk umum tentang cara men-deploy suatu fungsi, dan lihat untuk informasi tambahan khusus untuk mengonfigurasi Pub/Sub pemicu selama deployment.
gcloud
Jika Anda men-deploy menggunakan gcloud CLI, flag yang ditampilkan di sini digunakan untuk mengonfigurasi pemicu Pub/Sub:
gcloud functions deploy YOUR_FUNCTION_NAME \ --no-gen2 \ --trigger-topic=YOUR_PUBSUB_TOPIC \ [--retry] \ ...
- Flag
--trigger-topic
menentukan topik Pub/Sub yang akan dipantau oleh pemicu. Pesan yang dipublikasikan ke topik ini akan memicu panggilan ke fungsi Anda. - Flag
--retry
mengontrol apakah panggilan fungsi yang gagal akan dicoba ulang secara otomatis. Lihat Mencoba kembali fungsi berbasis peristiwa untuk mengetahui informasi selengkapnya.
Peristiwa Pub/Sub lama
Fungsi lama di fungsi Cloud Run (generasi ke-1) menggunakan jenis peristiwa yang berbeda untuk pemicu Pub/Sub:
gcloud functions deploy YOUR_FUNCTION_NAME \ --no-gen2 \ --trigger-event=providers/cloud.pubsub/eventTypes/topic.publish \ --trigger-resource=YOUR_PUBSUB_TOPIC \ ...
Jenis peristiwa ini didukung untuk fungsi lama yang telah menggunakan peristiwa ini. Namun, sebaiknya gunakan flag --trigger-topic
, karena jenis peristiwa yang lama mungkin dihapus pada tanggal yang akan datang.
Konsol
Jika Anda melakukan deployment menggunakan Konsol Google Cloud, Anda dapat mengonfigurasi pemicu Pub/Sub di bagian Pemicu:
- Di kolom Trigger type, pilih Cloud Pub/Sub.
- Di kolom Select a Cloud Pub/Sub topic, pilih topik untuk dipicu untuk memantau, atau pilih Create a topic untuk membuka jendela membuat topik baru. Saat pesan dipublikasikan ke topic, yang memicu panggilan ke fungsi Anda.
- Centang atau hapus centang pada kotak Coba lagi saat gagal untuk mengontrol apakah panggilan fungsi yang gagal akan dicoba ulang secara otomatis. Lihat Mencoba kembali fungsi berbasis peristiwa untuk informasi selengkapnya.
Langkah berikutnya
- Pelajari cara menulis fungsi berbasis peristiwa.
- Pelajari cara men-deploy fungsi Cloud Run.
- Lihat tutorial Pub/Sub untuk mengetahui contoh penulisan, deployment, dan pemanggilan fungsi dengan pemicu Pub/Sub.