Condividi tramite


Sospendere e riattivare le entità di messaggistica (disabilitazione)

Le code, gli argomenti e le sottoscrizioni possono essere temporaneamente sospesi. Con la sospensione, l'entità passa allo stato disabilitato. In questo stato, tutti i messaggi vengono mantenuti nella risorsa di archiviazione, Tuttavia, i messaggi non possono essere rimossi o aggiunti e le rispettive operazioni del protocollo generano errori.

È possibile sospendere un'entità per motivi amministrativi urgenti. Ad esempio, un ricevitore difettoso rimuove i messaggi dalla coda, non riesce l'elaborazione, ma non completa correttamente i messaggi e li rimuove. In questo caso, è possibile disabilitare la coda per ricevere finché non si corregge e si distribuisce il codice.

Una sospensione o una riattivazione può essere eseguita dall'utente o dal sistema. Il sistema sospende solo le entità a causa di gravi motivi amministrativi, ad esempio il raggiungimento del limite di spesa della sottoscrizione. Le entità disabilitate dal sistema non possono essere riattivate dall'utente, ma vengono ripristinate quando la causa della sospensione è stata risolta.

Stato coda

Gli stati che possono essere impostati per una coda sono:

  • Active: la coda è attiva. È possibile inviare e ricevere messaggi dalla coda.
  • Disabled: la coda è sospesa. Equivale a impostare Sia SendDisabled che ReceiveDisabled.
  • SendDisabled: non è possibile inviare messaggi alla coda, ma è possibile ricevervi messaggi. Se si tenta di inviare messaggi alla coda, si otterrà un'eccezione.
  • ReceiveDisabled: è possibile inviare messaggi alla coda, ma non è possibile riceverli. Se si tenta di ricevere messaggi dalla coda, si otterrà un'eccezione.

Modificare lo stato della coda nel portale di Azure:

  1. Nel portale di Azure passare allo spazio dei nomi del bus di servizio.

  2. Selezionare la coda per cui si vuole modificare lo stato. Le code sono visibili nel riquadro inferiore al centro.

  3. Nella pagina bus di servizio Coda vedere lo stato corrente della coda come collegamento ipertestuale. Se panoramica non è selezionata nel menu a sinistra, selezionarla per visualizzare lo stato della coda. Selezionare lo stato corrente della coda per modificarlo.

    Select state of the queue

  4. Selezionare il nuovo stato per la coda e selezionare OK.

    Set state of the queue

È anche possibile disabilitare le operazioni di invio e ricezione usando un modello di Azure Resource Manager tramite l'interfaccia della riga di comando di Azure o Azure PowerShell.

Modificare lo stato della coda con Azure PowerShell

L'esempio seguente mostra il comando di PowerShell per disabilitare una coda. Il comando di riattivazione è equivalente, con l'impostazione di Status su Active.

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

$q.Status = "Disabled"

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

Stato dell'argomento

È possibile modificare lo stato dell'argomento nel portale di Azure. Selezionare lo stato corrente dell'argomento per visualizzare la pagina seguente, che consente di modificare lo stato.

Change topic status

Gli stati che possono essere impostati per un argomento sono:

  • Attivo: l'argomento è attivo. È possibile inviare messaggi all'argomento.
  • Disabilitato: l'argomento è sospeso. Non è possibile inviare messaggi all'argomento. L'impostazione Disabilitata equivale all'impostazione di SendDisabled per un argomento.
  • SendDisabled: stesso effetto di Disabled. Non è possibile inviare messaggi all'argomento. Se si tenta di inviare messaggi all'argomento, si otterrà un'eccezione.

Stato sottoscrizione

È possibile modificare lo stato della sottoscrizione nel portale di Azure. Selezionare lo stato corrente della sottoscrizione per visualizzare la pagina seguente, che consente di modificare lo stato.

Change subscription status

Gli stati che possono essere impostati per una sottoscrizione sono:

  • Attivo: la sottoscrizione è attiva. È possibile ricevere messaggi dalla sottoscrizione.
  • Disabilitato: la sottoscrizione è sospesa. Non è possibile ricevere messaggi dalla sottoscrizione. L'impostazione disabilitata in una sottoscrizione equivale all'impostazione di ReceiveDisabled. Se si tenta di ricevere messaggi dalla sottoscrizione, si otterrà un'eccezione.
  • ReceiveDisabled: stesso effetto di Disabled. Non è possibile ricevere messaggi dalla sottoscrizione. Se si tenta di ricevere messaggi dalla sottoscrizione, si otterrà un'eccezione.

Ecco come il comportamento si basa sullo stato impostato su un argomento e sulla relativa sottoscrizione.

Stato dell'argomento Stato sottoscrizione Comportamento
Attive Attive È possibile inviare messaggi all'argomento e ricevere messaggi dalla sottoscrizione.
Attive Disabilitato o ricevuto disabilitato È possibile inviare messaggi all'argomento, ma non è possibile ricevere messaggi dalla sottoscrizione
Disabilitato o inviato disabilitato Attive Non è possibile inviare messaggi all'argomento, ma è possibile ricevere messaggi già presenti nella sottoscrizione.
Disabilitato o inviato disabilitato Disabilitato o ricevuto disabilitato Non è possibile inviare messaggi all'argomento e non è possibile ricevere dalla sottoscrizione.

Altri stati

L'enumerazione EntityStatus definisce anche un set di stati di transizione che possono essere impostati solo dal sistema.

Passaggi successivi

Per altre informazioni sulla messaggistica del bus di servizio, vedere gli argomenti seguenti: