Pozastavení a opětovná aktivace entit zasílání zpráv (zakázání)
Fronty, témata a odběry je možné dočasně pozastavit. Pozastavení umístí entitu do zakázaného stavu, ve kterém jsou všechny zprávy udržovány v úložišti. Zprávy se ale nedají odebrat ani přidat a příslušné operace protokolu přinášejí chyby.
Může být vhodné pozastavit entitu z naléhavého důvodu správy. Například chybný příjemce vezme zprávy z fronty, nezdaří zpracování a přesto nesprávně dokončí zprávy a odebere je. V takovém případě můžete chtít zakázat frontu pro příjem, dokud kód opravíte a nenasadíte.
Pozastavení nebo opětovnou aktivaci může provést buď uživatel, nebo systém. Systém pozastaví jenom entity z důvodu závažných důvodů správy, jako je dosažení limitu útraty předplatného. Entity zakázané systémem nelze znovu aktivovat uživatelem, ale obnoví se, pokud byla vyřešena příčina pozastavení.
Stav fronty
Stavy, které lze nastavit pro frontu, jsou:
- Aktivní: Fronta je aktivní. Zprávy můžete odesílat a přijímat z fronty.
- Zakázáno: Fronta je pozastavená. Je ekvivalentní nastavení SendDisabled i ReceiveDisabled.
- SendDisabled: Zprávy nemůžete posílat do fronty, ale můžete z ní přijímat zprávy. Pokud se pokusíte odeslat zprávy do fronty, zobrazí se výjimka.
- ReceiveDisabled: Zprávy můžete odesílat do fronty, ale nemůžete z ní přijímat zprávy. Pokud se pokusíte přijímat zprávy z fronty, zobrazí se výjimka.
Změna stavu fronty na webu Azure Portal:
Na webu Azure Portal přejděte do svého oboru názvů služby Service Bus.
Vyberte frontu, pro kterou chcete změnit stav. Fronty se zobrazují v dolním podokně uprostřed.
Na stránce Fronta služby Service Bus se podívejte na aktuální stav fronty jako hypertextový odkaz. Pokud není v nabídce vlevo vybraný přehled , vyberte ho a zobrazte stav fronty. Vyberte aktuální stav fronty a změňte ho.
Vyberte nový stav fronty a vyberte OK.
Operace odesílání a příjmu můžete také zakázat pomocí šablony Azure Resource Manageru prostřednictvím Azure CLI nebo Azure PowerShellu.
Změna stavu fronty pomocí Azure PowerShellu
Příkaz PowerShellu pro zakázání fronty se zobrazí v následujícím příkladu. Příkaz pro opětovnou aktivaci je ekvivalentní a nastaví Status
se na aktivní.
$q = Get-AzServiceBusQueue -ResourceGroup mygrp -NamespaceName myns -QueueName myqueue
$q.Status = "Disabled"
Set-AzServiceBusQueue -ResourceGroup mygrp -NamespaceName myns -QueueName myqueue -QueueObj $q
Stav tématu
Stav tématu můžete změnit na webu Azure Portal. Výběrem aktuálního stavu tématu zobrazíte následující stránku, která umožňuje změnit stav.
Stavy, které lze nastavit pro téma , jsou:
- Aktivní: Téma je aktivní. Do tématu můžete odesílat zprávy.
- Zakázáno: Téma je pozastavené. Do tématu nemůžete posílat zprávy. Nastavení Zakázáno je ekvivalentní nastavení SendDisabled pro téma.
- SendDisabled: Stejný účinek jako Zakázaný. Do tématu nemůžete posílat zprávy. Pokud se pokusíte odeslat zprávy do tématu, zobrazí se výjimka.
Stav předplatného
Stav předplatného můžete změnit na webu Azure Portal. Výběrem aktuálního stavu předplatného zobrazíte následující stránku, která umožňuje změnit stav.
Stavy, které je možné nastavit pro předplatné , jsou:
- Aktivní: Předplatné je aktivní. Zprávy můžete přijímat z odběru.
- Zakázáno: Předplatné je pozastavené. Z odběru nemůžete přijímat zprávy. Nastavení Zakázáno v předplatném odpovídá nastavení ReceiveDisabled. Pokud se pokusíte přijímat zprávy z odběru, zobrazí se výjimka.
- ReceiveDisabled: Stejný účinek jako Zakázaný. Z odběru nemůžete přijímat zprávy. Pokud se pokusíte přijímat zprávy z odběru, zobrazí se výjimka.
Tady je postup, jak chování vychází ze stavu, který jste nastavili v tématu a jeho předplatném.
Stav tématu | Stav předplatného | Chování |
---|---|---|
Aktivní | Aktivní | Zprávy můžete odesílat do tématu a přijímat zprávy z odběru. |
Aktivní | Zakázáno nebo přijmout zakázáno | Do tématu můžete posílat zprávy, ale nemůžete přijímat zprávy z odběru. |
Zakázáno nebo odesílání zakázaných | Aktivní | Do tématu nemůžete posílat zprávy, ale můžete přijímat zprávy, které už jsou v předplatném. |
Zakázáno nebo odesílání zakázaných | Zakázáno nebo přijmout zakázáno | Do tématu nemůžete posílat zprávy a ani z odběru nemůžete přijímat zprávy. |
Další stavy
Výčet EntityStatus také definuje sadu přechodných stavů, které lze nastavit pouze systémem.
Další kroky
Další informace o zasílání zpráv služby Service Bus najdete v následujících tématech: