Menangguhkan dan mengaktifkan kembali entitas perpesanan (nonaktifkan)

Antrean, topik, dan langganan dapat ditangguhkan untuk sementara. Penangguhan menempatkan entitas ke dalam status dinonaktifkan di mana semua pesan dipertahankan dalam penyimpanan. Namun, pesan tidak dapat dihapus atau ditambahkan, dan operasi protokol masing-masing menangguhkan kesalahan.

Anda mungkin ingin menangguhkan entitas karena alasan administratif yang mendesak. Misalnya, penerima yang salah mengambil pesan dari antrean, gagal memproses, namun salah menyelesaikan pesan dan menghapusnya. Dalam hal ini, Anda mungkin ingin menonaktifkan antrean untuk menerima sampai Anda memperbaiki dan menyebarkan kode.

Penangguhan atau mengaktifkan kembali dapat dilakukan baik oleh pengguna atau oleh sistem. Sistem ini hanya menangguhkan entitas karena alasan administrasi yang berat seperti mencapai batas pengeluaran langganan. Entitas yang dinonaktifkan sistem tidak dapat diaktifkan kembali oleh pengguna, tetapi dipulihkan ketika penyebab penangguhan telah diatasi.

Status antrean

Status yang dapat diatur untuk antrean adalah:

  • Aktif: Antrean aktif. Anda dapat mengirim pesan ke dan menerima pesan dari antrean.
  • Dinonaktifkan: Antrean ditangguhkan. Ini setara dengan pengaturan SendDisabled dan ReceiveDisabled.
  • SendDisabled: Anda tidak dapat mengirim pesan ke antrean, tetapi Anda dapat menerima pesan darinya. Anda akan mendapatkan pengecualian jika mencoba mengirim pesan ke antrean.
  • ReceiveDisabled: Anda dapat mengirim pesan ke antrean, tetapi Anda tidak dapat menerima pesan darinya. Anda akan mendapatkan pengecualian jika mencoba menerima pesan ke antrean.

Ubah status antrean di portal Azure:

  1. Di portal Microsoft Azure, buka namespace Service Bus Anda.

  2. Pilih antrean yang ingin Anda ubah statusnya. Anda melihat antrean di panel bawah di tengah.

  3. Pada halaman Antrean Bus Layanan, lihat status antrean saat ini sebagai hyperlink. Jika Gambaran Umum tidak dipilih di menu sebelah kiri, pilih untuk melihat status antrean. Pilih status antrean saat ini untuk mengubahnya.

    Select state of the queue

  4. Pilih status baru untuk antrean, dan pilih OK.

    Set state of the queue

Anda juga dapat menonaktifkan operasi kirim dan terima menggunakan templat Azure Resource Manager melalui Azure CLI atau Azure PowerShell.

Mengubah status antrean menggunakan Azure PowerShell

Perintah PowerShell untuk menonaktifkan antrean diperlihatkan dalam contoh berikut. Perintah mengaktifkan kembali setara, pengaturan Status ke Aktif.

$q = Get-AzServiceBusQueue -ResourceGroup mygrp -NamespaceName myns -QueueName myqueue

$q.Status = "Disabled"

Set-AzServiceBusQueue -ResourceGroup mygrp -NamespaceName myns -QueueName myqueue -QueueObj $q

Status topik

Anda dapat mengubah status topik di portal Azure. Pilih status topik saat ini untuk melihat halaman berikut, yang memungkinkan Anda untuk mengubah status.

Change topic status

Status yang dapat diatur untuk sebuah topik adalah:

  • Aktif: Topik ini aktif. Anda dapat mengirim pesan ke topik tersebut.
  • Dinonaktifkan: Topik ditangguhkan. Anda tidak dapat mengirim pesan ke topik tersebut. Pengaturan Dinonaktifkan setara dengan pengaturan SendDisabled untuk suatu topik.
  • SendDisabled: Efek yang sama dengan Dinonaktifkan. Anda tidak dapat mengirim pesan ke topik tersebut. Anda akan mendapatkan pengecualian jika mencoba mengirim pesan ke topik tersebut.

Status langganan

Anda dapat mengubah status langganan di portal Azure. Pilih status langganan saat ini untuk melihat halaman berikut, yang memungkinkan Anda mengubah status.

Change subscription status

Status yang dapat diatur untuk langganan adalah:

  • Aktif: Langganan aktif. Anda dapat menerima pesan dari langganan.
  • Dinonaktifkan: Langganan ditangguhkan. Anda tidak dapat menerima pesan dari langganan. Pengaturan Dinonaktifkan pada langganan setara dengan pengaturan ReceiveDisabled. Anda akan mendapatkan pengecualian jika mencoba menerima pesan ke langganan.
  • ReceiveDisabled: Efek yang sama seperti Dinonaktifkan. Anda tidak dapat menerima pesan dari langganan. Anda akan mendapatkan pengecualian jika mencoba menerima pesan ke langganan.

Berikut adalah bagaimana perilaku didasarkan pada status yang Anda tetapkan pada suatu topik dan langganannya.

Status topik Status langganan Perilaku
Aktif Aktif Anda dapat mengirim pesan ke topik tersebut dan menerima pesan dari langganan.
Aktif Dinonaktifkan atau Terima Dinonaktifkan Anda bisa mengirim pesan ke topik tersebut, tapi Anda tidak bisa menerima pesan dari langganan
Dinonaktifkan atau Kirim Dinonaktifkan Aktif Anda tidak bisa mengirim pesan ke topik tersebut, tapi Anda bisa menerima pesan yang sudah ada di langganan.
Dinonaktifkan atau Kirim Dinonaktifkan Dinonaktifkan atau Terima Dinonaktifkan Anda juga tidak bisa mengirim pesan ke topik tersebut dan Anda juga tidak bisa menerimanya dari langganan.

Status lainnya

Enumerasi EntityStatus juga mendefinisikan serangkaian status transisi yang hanya dapat diatur oleh sistem.

Langkah berikutnya

Untuk mempelajari selengkapnya tentang olahpesan Microsoft Azure Service Bus, lihat topik berikut ini: