Untuk memublikasikan pesan dengan Pub/Sub, aplikasi penayang akan membuat dan mengirim pesan ke suatu topik.
Dokumen ini memberikan ringkasan tentang alur kerja publikasi, termasuk konsep topik dan pesan.
Tentang topik
Topik Pub/Sub adalah resource bernama yang mewakili feed pesan. Saat mengirim pesan, penayang menargetkan topik tertentu. Layanan Pub/Sub menggunakan nama topik ini untuk merutekan pesan ke semua langganan yang dilampirkan ke topik. Jika ada beberapa pelanggan untuk langganan, hanya satu pelanggan dalam langganan yang akan menerima pesan.
Penayang tidak perlu mengetahui jumlah subscriber yang ada. Fungsi ini berfokus pada topik, memastikan pemisahan masalah antara pengiriman pesan dan penerimaan pesan.
Pub/Sub mendukung dua jenis topik: topik standar dan topik impor.
Properti topik
Saat membuat atau memperbarui topik, Anda dapat menentukan properti topik.
Untuk mengetahui informasi selengkapnya tentang properti topik, lihat Properti topik.
Tentang topik impor
Topik impor memungkinkan Pub/Sub menyerap data streaming dari sumber lain dan bertindak sebagai aplikasi penayang yang mengirim data ke topik. Anda dapat mengaktifkan penyerapan pada topik menggunakan konsol, Google Cloud CLI, panggilan REST, atau library klien. Sebagai bagian dari pengelolaan topik impor, Google Cloud menyediakan pemantauan dan penskalaan pipeline penyerapan.
Tanpa topik impor, streaming data ke Pub/Sub dari sumber data memerlukan layanan tambahan. Layanan tambahan ini mengambil data dari sumber asli dan memublikasikannya ke Pub/Sub. Layanan tambahan dapat berupa mesin streaming seperti Apache Spark atau layanan yang ditulis khusus. Anda juga harus mengonfigurasi, men-deploy, menjalankan, menskalakan, dan memantau layanan ini.
Berikut adalah daftar informasi penting terkait topik impor:
Serupa dengan topik standar, Anda masih dapat memublikasikan secara manual ke topik impor.
Anda hanya dapat melampirkan satu sumber penyerapan ke topik impor.
Sebaiknya impor topik untuk data streaming. Jika Anda mempertimbangkan penyerapan data batch ke BigQuery, bukan penyerapan data streaming, Anda dapat mencoba BigQuery Data Transfer Service (BQ DTS). Jika Anda ingin menyerap data ke Cloud Storage, Storage Transfer Service (STS) adalah opsi yang tepat.
Pub/Sub mendukung sumber berikut untuk topik impor:
Replikasi data dalam 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 dilakukan dalam satu region.
Tentang pesan
Pesan Pub/Sub adalah data yang bergerak melalui layanan.
Pesan terdiri dari kolom dengan data dan metadata pesan. Salah satu dari hal berikut harus ditentukan dalam pesan.
Data pesan: Ini adalah konten inti pesan dan dapat berupa data teks atau biner. Ini mewakili informasi sebenarnya yang ingin Anda komunikasikan antara penayang dan pelanggan. Jika Anda menggunakan REST API secara langsung, data pesan harus dienkode base64. Lihat contoh di tab REST di bagian Publikasikan pesan.
Kunci pengurutan: Ini adalah ID yang mewakili entity yang pesannya harus diurutkan. Pesan dengan kunci pengurutan yang sama diharapkan dikirimkan kepada pelanggan sesuai dengan urutan saat pesan tersebut dipublikasikan. Kunci pengurutan hanya diperlukan jika Anda ingin pesan dikirim secara berurutan. Untuk informasi selengkapnya tentang kunci pengurutan, lihat Pesan urutan.
Atribut: Ini adalah pasangan nilai kunci opsional yang memberikan konteks dan informasi tambahan tentang pesan. Atribut ini dapat digunakan untuk merutekan, memfilter, atau memperkaya konten pesan. Misalnya, Anda dapat menambahkan atribut seperti stempel waktu atau ID transaksi. Untuk mengetahui informasi selengkapnya tentang atribut yang digunakan dalam memublikasikan pesan, lihat 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"
}
Alur kerja publikasi pesan
Untuk memublikasikan pesan dengan Pub/Sub, aplikasi penayang membuat dan mengirim pesan ke topik.
- Buat pesan yang berisi data Anda.
- Pilih atribut publikasi opsional.
- Kirim permintaan ke server Pub/Sub untuk memublikasikan pesan ke topik yang ditentukan.
Layanan Pub/Sub menerima pesan dan memprosesnya sebagai berikut:
Pesan disimpan untuk didistribusikan.
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 pelanggan.
Pub/Sub menawarkan pengiriman pesan minimal satu kali dan pengurutan upaya terbaik kepada pelanggan yang ada.
Untuk mengetahui informasi selengkapnya tentang sistem Pub/Sub, lihat Ringkasan layanan Pub/Sub.
Untuk mengetahui informasi selengkapnya tentang cara kerja Pub/Sub, lihat Ringkasan arsitektur Pub/Sub.