Pub/Sub adalah layanan pesan real-time terkelola sepenuhnya yang memungkinkan Anda mengirim dan menerima pesan antar-aplikasi secara independen. Halaman ini menunjukkan cara mengelola Pub/Sub menggunakan Cloud Tools for PowerShell. Panduan ini membahas contoh sederhana pembuatan topik, memublikasikan pesan ke topik, membuat langganan ke topik, dan mengambil pesan dari topik ke langganan.
Baca referensi cmdlet Cloud Tools for PowerShell untuk mempelajari cmdlet Pub/Sub lebih lanjut. Untuk mempelajari lebih lanjut Pub/Sub secara umum, baca Ringkasan Pub/Sub.
Membuat topik
Aplikasi penayang membuat dan mengirim pesan ke suatu topik. Anda dapat memanggil
cmdlet New‑GcpsTopic
untuk membuat instance dalam topik tertentu. Jika konfigurasi gcloud aktif Anda memiliki project, Anda tidak perlu menggunakan parameter -Project
.
# Creates topic "my-topic" in the default project. New-GcpsTopic -Topic "my-topic"
Memublikasikan pesan ke topik
Untuk memublikasikan pesan ke topik, Anda dapat menggunakan cmdlet Publish‑GcpsMessage
.
# Publishes the message with data "This is a test" to topic "my-topic". Publish-GcpsMessage -Data "This is a test" -Topic "my-topic"
Untuk memublikasikan beberapa pesan ke topik yang sama dengan satu permintaan, Anda dapat
menggunakan cmdlet New‑GcpsMessage
untuk membuat array pesan dan meneruskannya ke
cmdlet Publish‑GcpsMessage
.
# Creates two messages. $messageOne = New-GcpsMessage -Data "This is a test" $messageTwo = New-GcpsMessage -Data "Data" -Attributes @{"key" = "value"} # Publish the messages to topic "my-topic". Publish-GcpsMessage -Message @($messageOne, $messageTwo) -Topic "my-topic"
Membuat langganan ke topik
Aplikasi pelanggan membuat langganan ke topik untuk menerima pesan
dari topik tersebut. Anda dapat memanggil cmdlet New‑GcpsSubscription
untuk membuat instance dalam
topik tertentu. Jika konfigurasi gcloud
aktif memiliki project, Anda
tidak perlu menggunakan parameter -Project
.
Secara default, langganan yang dibuat adalah langganan pull, yang berarti
pelanggan akan menarik pesan dari topik. Anda dapat membuat langganan push (Pub/Sub akan mengirim pesan ke endpoint yang dipilih pelanggan) dengan -PushEndpoint
.
# Creates pull subscription "pull-subscription" to topic "my-topic" in the default project. New-GcpsSubscription -Topic "my-topic" -Subscription "pull-subscription" # Creates push subscription "push-subscription" to topic "my-topic". New-GcpsSubscription -Topic "my-topic" ` -Subscription "push-subscription" ` -PushEndpoint "http://www.example.com"
Mengambil pesan untuk langganan
Untuk mengambil pesan untuk langganan, Anda dapat menggunakan cmdlet Get‑GcpsMessage
.
Secara default, cmdlet akan memblokir hingga setidaknya satu pesan diambil.
Untuk mencegah pemblokiran, gunakan parameter -ReturnImmediately
.
Cmdlet ini juga dapat otomatis mengirim konfirmasi untuk setiap pesan yang diambil jika Anda menggunakan parameter -AutoAck
. Jika tidak, Anda harus menggunakan
cmdlet Send‑GcpsAck
untuk mengirim konfirmasi. Pesan yang tidak dikonfirmasi
akan tersedia lagi untuk diambil setelah batas waktu konfirmasi pesan
berakhir.
# Pulls messages from subscription "my-subscription" and sends out acknowledgement automatically. Get-GcpsMessage -Subscription "my-subscription" -AutoAck # Pulls messages from subscription "my-subscription" and sends out acknowledgement with Send-GcpsAck. $messages = Get-GcpsMessage -Subscription "my-subscription" Send-GcpsAck -InputObject $messages