Suspensión y reactivación de entidades de mensajería (deshabilitar)

Las colas, los temas y las suscripciones se pueden suspender temporalmente. La suspensión coloca la entidad en un estado deshabilitado, en el que todos los mensajes se mantienen en el almacenamiento. Sin embargo, no se quitan ni se agregan mensajes, y las operaciones del protocolo respectivo producen error.

Es posible que quiera suspender una entidad por razones administrativas urgentes. Por ejemplo, cuando un receptor defectuoso saca mensajes de la cola, no realiza el procesamiento y encima completa incorrectamente los mensajes y los quita. En este caso, puede que quiera deshabilitar la cola de recepción hasta que corrija e implemente el código.

El usuario o el sistema pueden realizar la suspensión o la reactivación. El sistema solo suspende las entidades por motivos administrativos graves como haber alcanzado el límite de gasto de suscripción. El usuario no puede reactivar las entidades deshabilitadas por el sistema, pero se restauran cuando se ha solucionado la causa de la suspensión.

Estado de la cola

Los estados que se pueden establecer para una cola son:

  • Activa: la cola está activa. Puede enviar y recibir mensajes de la cola.
  • Disabled: la cola se ha suspendido. Es equivalente a establecer SendDisabled y ReceiveDisabled.
  • SendDisabled: no puede enviar mensajes a la cola, pero puede recibirlos de ella. Si intenta enviar mensajes a la cola, recibirá una excepción.
  • ReceiveDisabled: puede enviar mensajes a la cola, pero no puede recibirlos de ella. Si intenta recibir mensajes de la cola, obtendrá una excepción.

Cambie el estado de la cola en Azure Portal:

  1. En Azure Portal, vaya al espacio de nombres de Service Bus.

  2. Seleccione la cola para la que desea cambiar el estado. Verá las colas en el panel inferior, en la parte central.

  3. En la página Cola de Service Bus, vea el estado actual de la cola como un hipervínculo. Si no está seleccionada la opción de información general en el menú de la izquierda, selecciónela para ver el estado de la cola. Seleccione el estado actual de la cola para cambiarlo.

    Selección del estado de la cola

  4. Seleccione el nuevo estado de la cola y luego Aceptar.

    Establecimiento del estado de la cola

También puede deshabilitar las operaciones de envío y recepción mediante las API NamespaceManager de Service Bus en el SDK de .NET, o con una plantilla de Azure Resource Manager mediante la CLI de Azure o Azure PowerShell.

Cambio del estado de la cola mediante Azure PowerShell

El comando de PowerShell para deshabilitar una cola se muestra en el ejemplo siguiente. El comando de reactivación es equivalente a establecer Status en Activo.

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

$q.Status = "Disabled"

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

Estado del tema

Puede cambiar el estado del tema en Azure Portal. Seleccione el estado actual del tema para ver la siguiente página, que le permite cambiar el estado.

Cambio del estado de tema

Los estados que se pueden establecer para un tema son:

  • Activa: El tema está activo. Puede enviar mensajes al tema.
  • Disabled: El tema se ha suspendido. No puede enviar mensajes al tema.
  • SendDisabled: El mismo efecto que Disabled. No puede enviar mensajes al tema. Si intenta enviar mensajes al tema, recibirá una excepción.

Estado de la suscripción

Puede cambiar el estado de la suscripción en Azure Portal. Seleccione el estado actual de la suscripción para ver la siguiente página, que le permite cambiar el estado.

Cambio del estado de la suscripción

Los estados que se pueden establecer para una suscripción son:

  • Activa: Que la suscripción está activa. Puede recibir mensajes de la suscripción.
  • Disabled: la suscripción está suspendida. No puede recibir mensajes de la suscripción.
  • ReceiveDisabled: El mismo efecto que Disabled. No puede recibir mensajes de la suscripción. Si intenta recibir mensajes de la suscripción, obtendrá una excepción.
Estado del tema Estado de la suscripción Comportamiento
Activo Activo Puede enviar mensajes al tema y recibirlos de la suscripción.
Activo Deshabilitada o recepción deshabilitada Puede enviar mensajes al tema, pero no puede recibirlos de la suscripción.
Deshabilitada o envío deshabilitado Activo No puede enviar mensajes al tema, pero puede recibir los que ya estén en la suscripción.
Deshabilitada o envío deshabilitado Deshabilitada o recepción deshabilitada No puede enviar mensajes al tema ni tampoco recibirlos de la suscripción.

Otros estados

La enumeración EntityStatus también define un conjunto de estados de transición que solo puede establecer el sistema.

Pasos siguientes

Para más información sobre la mensajería de Service Bus, consulte los siguientes temas: