Dokumen ini memberikan ringkasan tentang cara memublikasikan pesan.
Alur kerja publikasikan pesan
Untuk memublikasikan pesan dengan Pub/Sub, aplikasi penayang harus membuat dan mengirim pesan ke sebuah topik.
- Buat pesan yang berisi data Anda.
- Pilih atribut publikasi opsional.
- Mengirim permintaan ke server Pub/Sub untuk memublikasikan pesan ke topik tertentu.
Layanan Pub/Sub menerima pesan dan memprosesnya sebagai berikut:
Pesan disimpan untuk distribusi.
Pesan direplikasi di beberapa zona untuk ketahanan dan ketersediaan tinggi.
Pub/Sub mengidentifikasi pelanggan dengan langganan yang cocok dengan topik pesan, dan mengirimkan salinan pesan ke setiap langganan.
Pub/Sub menawarkan pengiriman pesan setidaknya satu kali dan pemesanan dengan upaya terbaik kepada pelanggan yang ada.
Untuk ringkasan tentang sistem Pub/Sub, lihat Ringkasan layanan Pub/Sub.
Untuk penjelasan tentang cara kerja Pub/Sub, lihat Ringkasan arsitektur Pub/Sub.
Tentang topik
Topik Pub/Sub adalah resource bernama yang mewakili feed pesan. Saat penayang mengirim pesan, penayang akan menargetkan topik tertentu. Layanan Pub/Sub menggunakan nama topik ini untuk mengarahkan pesan ke semua langganan yang terkait dengan topik. Jika ada beberapa pelanggan untuk sebuah langganan, hanya satu pelanggan dalam langganan yang akan menerima pesan.
Penerbit tidak perlu mengetahui berapa banyak subscriber yang ada. Mereka berfokus pada topik, yang memastikan pemisahan fokus antara pengiriman dan penerimaan pesan.
Replikasi data dalam suatu topik
Topik Pub/Sub menggunakan tiga zona untuk menyimpan data. Layanan ini mendukung replikasi sinkron ke setidaknya dua zona, dan replikasi dengan upaya terbaik ke zona ketiga tambahan. Replikasi Pub/Sub hanya berada dalam satu region.
Properti topik
Saat membuat atau memperbarui topik, Anda dapat menentukan properti topik.
Tentang pesan
Pesan Pub/Sub adalah data yang berpindah melalui layanan.
Pesan terdiri dari kolom yang berisi metadata dan data pesan. Salah satu dari hal berikut ini harus ditentukan dalam pesan.
Data pesan: Ini adalah konten inti pesan dan dapat berupa data teks atau biner. Hal itu mewakili informasi aktual yang ingin Anda komunikasikan antara penerbit dan pelanggan. Jika Anda menggunakan REST API secara langsung, data pesan harus berenkode base64. Lihat contohnya di tab REST di bagian Memublikasikan pesan.
Kunci pengurutan: Ini adalah ID yang mewakili entity yang pesannya harus diurutkan. Pesan dengan kunci pengurutan yang sama diharapkan untuk dikirimkan ke pelanggan sesuai urutan publikasinya. Kunci pengurutan hanya diperlukan jika Anda ingin mengatur pengiriman pesan. Untuk mempelajari lebih lanjut cara mengurutkan kunci, lihat Pesan pesan.
Atribut: Ini adalah key-value pair opsional yang memberikan konteks dan informasi tambahan tentang pesan. Filter dapat digunakan untuk mengarahkan, memfilter, atau memperkaya isi pesan. Misalnya, Anda dapat menambahkan atribut seperti stempel waktu atau ID transaksi. Untuk mengetahui lebih lanjut tentang atribut yang digunakan dalam memublikasikan pesan, baca artikel Menggunakan atribut untuk memublikasikan pesan.
Layanan Pub/Sub menambahkan kolom berikut ke pesan:
- ID pesan yang unik untuk topik
- Stempel waktu saat layanan Pub/Sub menerima pesan
Misalnya, berikut adalah format pesan dalam JSON:
{
"data": "This is the core message content.",
"attributes": {
"category": "notification",
"user_id": "12345",
"priority": "medium"
},
"orderingKey": "12345"
}