Mesajlaşma varlıklarını askıya alma ve yeniden etkinleştirme (devre dışı bırakma)

Kuyruklar, konular ve abonelikler geçici olarak askıya alınabilir. Askıya alma, varlığı tüm iletilerin depolamada bulunduğu devre dışı durumuna geçirir. Ancak, iletiler kaldırılamaz veya eklenemez ve ilgili protokol işlemleri hatalara sebep olur.

Acil Yönetim nedenleriyle bir varlığı askıya almak isteyebilirsiniz. Örneğin, hatalı alıcı iletileri kuyruktan çıkarır, işleme başarısız olur ve iletileri yanlış bir şekilde tamamlar ve onları kaldırır. Bu durumda, kodu düzeltip ve dağıtana kadar kuyruğu alma için devre dışı bırakmak isteyebilirsiniz.

Askıya alma veya yeniden etkinleştirme, Kullanıcı ya da sistem tarafından gerçekleştirilebilir. Yalnızca abonelik harcama sınırına vurmaya yönelik aksan, yönetim nedenlerinden dolayı sistem varlıkları askıya alır. Sistem devre dışı bırakılmış varlıklar Kullanıcı tarafından yeniden etkinleştirilemez, ancak askıya alınma nedeni sağlandığında geri yüklenir.

Sıra durumu

Bir kuyruk için ayarlanabilir durumlar şunlardır:

  • Etkin: kuyruk etkin. Kuyruğa ileti gönderebilir ve kuyruktan ileti alabilirsiniz.
  • Devre dışı: sıra askıya alındı. Hem Senddisabled hem de receivedisabled ayarlamaya eşdeğerdir.
  • Senddisabled: kuyruğa ileti gönderemezsiniz, ancak bundan ileti alabilirsiniz. Kuyruğa ileti göndermeye çalışırsanız bir özel durum alırsınız.
  • Receivedisabled: kuyruğa ileti gönderebilirsiniz, ancak bundan ileti alamazsınız. Kuyruğa ileti almaya çalışırsanız bir özel durum alırsınız.

Azure portal sıra durumunu değiştirin:

  1. Azure portal, Service Bus ad alanına gidin.

  2. Durumunu değiştirmek istediğiniz kuyruğu seçin. Kuyrukları ortadaki alt bölmede görürsünüz.

  3. Service Bus kuyruğu sayfasında, sıranın geçerli durumuna bir köprü olarak bakın. Sol menüde genel bakış seçilmezse, sıranın durumunu görmek için seçin. Değişiklik için kuyruğun geçerli durumunu seçin.

    Kuyruğun durumunu seçin

  4. Kuyruğun yeni durumunu seçin ve Tamam' ı seçin.

    Kuyruğun durumunu ayarla

ayrıca, .net SDK 'sında Service Bus namespacemanager apı 'lerini kullanarak gönderme ve alma işlemlerini devre dışı bırakabilir veya Azure clı veya Azure PowerShell aracılığıyla bir Azure Resource Manager şablonu kullanabilirsiniz.

Azure PowerShell kullanarak sıra durumunu değiştirme

Bir sırayı devre dışı bırakmak için PowerShell komutu aşağıdaki örnekte gösterilmiştir. Yeniden etkinleştirme komutu eşdeğerdir, Status etkin olarak ayarlanıyor.

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

$q.Status = "Disabled"

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

Konu durumu

Azure portal konu durumu ' nu değiştirebilirsiniz. Durumu değiştirmenize olanak sağlayan aşağıdaki sayfayı görmek için konunun geçerli durumunu seçin.

Konu durumunu değiştir

Bir Konu için ayarlanabilir durumlar şunlardır:

  • Etkin: konu etkin. Konuya ileti gönderebilirsiniz.
  • Devre dışı: konu askıya alındı. Konuya ileti gönderemezsiniz.
  • Senddisabled: devre dışı olarak aynı etkiye sahiptir. Konuya ileti gönderemezsiniz. Konuya ileti göndermeye çalışırsanız bir özel durum alırsınız.

Abonelik durumu

Azure portal abonelik durumunu değiştirebilirsiniz. Durumu değiştirmenize olanak sağlayan aşağıdaki sayfayı görmek için aboneliğin geçerli durumunu seçin.

Abonelik durumunu değiştir

Bir abonelik için ayarlanabilir durumlar şunlardır:

  • Etkin: Abonelik etkin. Abonelikten ileti alabilirsiniz.
  • Devre dışı: abonelik askıya alındı. Abonelikten ileti alamazsınız.
  • Receivedisabled: devre dışı olarak aynı efekt. Abonelikten ileti alamazsınız. Abonelik için ileti almaya çalışırsanız bir özel durum alırsınız.
Konu durumu Abonelik durumu Davranış
Etkin Etkin Konuya ileti gönderebilir ve abonelikten ileti alabilirsiniz.
Etkin Devre dışı veya alma devre dışı Konuya ileti gönderebilirsiniz, ancak abonelikten ileti alamazsınız
Devre dışı veya Gönder devre dışı Etkin Konuya ileti gönderemezsiniz, ancak zaten abonelikte olan iletileri alabilirsiniz.
Devre dışı veya Gönder devre dışı Devre dışı veya alma devre dışı Konuya ileti gönderemezsiniz ve abonelikten birini alamazsınız.

Diğer durumlar

EntityStatus numaralandırması Ayrıca yalnızca sistem tarafından ayarlanabileceğini belirten bir geçiş durumları kümesi tanımlar.

Sonraki adımlar

Service Bus mesajlaşma hakkında daha fazla bilgi edinmek için aşağıdaki konulara bakın: