Nivel de mensajería Premium de Service Bus
La mensajería de Service Bus, que incluye entidades como colas y temas, combina las funcionalidades de la mensajería empresarial con una completa semántica de publicación-suscripción en la escala de nube. La mensajería de Service Bus se utiliza como la red troncal de comunicación para muchas soluciones sofisticadas en la nube.
El nivel Premium de la mensajería de Service Bus atiende solicitudes comunes de los clientes con relación a la escala, el rendimiento y la disponibilidad para aplicaciones fundamentales. Se recomienda usar el nivel premium para los escenarios de producción. Aunque los conjuntos de características son prácticamente idénticos, los niveles estándar y premium de mensajería de Service Bus están diseñados para usarse en distintas situaciones.
En la tabla siguiente, se resaltan algunas de las principales diferencias.
Criterios | Premium | Estándar |
---|---|---|
Capacidad de proceso | Capacidad de proceso elevada | Capacidad de proceso variable |
Rendimiento | Rendimiento predecible | Latencia variable |
Precios | Precio fijo | Precios según la variante de pago por uso |
Escala | Posibilidad de escalar y de reducir verticalmente la carga de trabajo | N/D |
Tamaño del mensaje | Tamaño de mensaje de hasta 100 MB Para más información, consulte Compatibilidad con mensajes largos. | Tamaño de mensaje de hasta 256 KB |
La mensajería Premium de Service Bus proporciona aislamiento de recursos en el nivel de CPU y memoria para que cada carga de trabajo de cliente se ejecute de forma aislada. Este contenedor de recursos se llama unidad de mensajería. A cada espacio de nombres premium se le asigna al menos una unidad de mensajería. Puede comprar 1, 2, 4, 8 o 16 unidades de mensajería para cada espacio de nombres Premium de Service Bus. Una sola carga de trabajo o entidad puede abarcar varias unidades de mensajería y el número de unidades de mensajería puede cambiarse a voluntad. El resultado es un rendimiento predecible y repetible para su solución basada en Service Bus.
Este rendimiento no es solo más predecible y presenta mayor disponibilidad, sino que también es más rápido. Con la mensajería premium, obtener el máximo rendimiento es mucho más rápido que en el nivel estándar.
Diferencias técnicas de la mensajería premium
En las secciones siguientes se describen algunas diferencias existentes entre los niveles de mensajería estándar y premium.
Entidades exprés
Dado que la mensajería premium se ejecuta en un entorno de tiempo de ejecución aislado, no se admiten entidades rápidas en los espacios de nombres premium. Una entidad express conserva un mensaje en la memoria temporalmente antes de escribirlo en el almacenamiento persistente. Si tiene código que se ejecuta en la mensajería estándar y quiere trasladarlo al nivel premium, asegúrese de que la característica de entidad exprés está deshabilitada.
Uso de recursos de mensajería premium
En general, cualquier operación en una entidad puede causar el uso de CPU y memoria. Estas son algunas de las operaciones:
- Operaciones de administración como creación recuperación, actualización y eliminación (CRUD) en colas, temas y suscripciones.
- Operaciones en tiempo de ejecución (enviar y recibir mensajes).
- Operaciones de supervisión y alertas.
El uso de memoria y CPU adicional no tiene un costo adicional. Para el nivel de mensajería premium, hay un precio único por unidad de mensaje.
El uso de CPU y memoria se supervisa y se muestra por los motivos siguientes:
- Proporcionar transparencia en los aspectos internos del sistema.
- Entender la capacidad de los recursos adquiridos.
- Permitir el planeamiento de capacidad que le ayuda a escalar o reducir verticalmente.
¿Cuántas unidades de mensajería se necesitan?
Se especifica el número de unidades de mensajería al aprovisionar un espacio de nombres premium de Azure Service Bus. Estas unidades de mensajería son recursos dedicados que se asignan al espacio de nombres. Cuando se habilita la creación de particiones en el espacio de nombres, las unidades de mensajería se distribuyen equitativamente entre las particiones.
El número de unidades de mensajería asignadas al espacio de nombres premium de Service Bus se puede ajustar dinámicamente para factorizar el cambio (aumento o disminución) de las cargas de trabajo.
Hay varios factores que se deben tener en cuenta a la hora de decidir el número de unidades de mensajería que va a tener una arquitectura:
- Comience con 1 o 2 unidades de mensajería asignadas al espacio de nombres o 1 unidad de mensajería por partición.
- Estudie las métricas de uso de la CPU en Métricas de uso de recursos para el espacio de nombres.
- Si el uso de CPU está por *debajo del 20 %, es posible que pueda reducir verticalmente el número de unidades de mensajería asignadas al espacio de nombres.
- Si el uso de CPU está por encima del 70 %, la aplicación se beneficiará del escalado vertical del número de unidades de mensajería asignadas al espacio de nombres.
Para obtener información sobre cómo configurar un espacio de nombres de Service Bus para escalar automáticamente (aumentar o disminuir las unidades de mensajería), consulte Actualización automática de unidades de mensajería.
Nota
El escalado de los recursos asignados al espacio de nombres puede ser preventivo o reactivo.
Preventivo: Si se espera una carga de trabajo adicional (debido a la estacionalidad o a determinadas tendencias), puede seguir asignando más unidades de mensajería al espacio de nombres antes de que lleguen las cargas de trabajo.
Reactivo: Si se identifican cargas de trabajo adicionales mediante el estudio de las métricas de uso de los recursos, se pueden asignar recursos adicionales al espacio de nombres para satisfacer una mayor demanda.
Los medidores de facturación de Service Bus son por horas. En el caso del escalado vertical, solo paga por los recursos adicionales durante las horas en que se usaron.
Introducción a la mensajería premium
La introducción a la mensajería premium es muy sencilla y el proceso es similar al de la mensajería estándar. Comience por crear un espacio de nombres en Azure Portal. Asegúrese de que selecciona Premium en Plan de tarifa. Seleccione Ver todos los detalles de los precios para ver más información sobre cada nivel.
También puede crear un espacios de nombres premium con plantillas de Azure Resource Manager.
Compatibilidad con mensajes grandes
Los espacios de nombres de nivel Prémium de Azure Service Bus admiten la capacidad de enviar cargas de mensajes grandes, de hasta 100 MB. Esta característica está destinada principalmente a cargas de trabajo heredadas que han usado cargas de mensajes mayores en otros agentes de mensajería empresarial y buscan migrar sin problemas a Azure Service Bus.
Estas son algunas consideraciones que deben tenerse en cuenta al enviar mensajes grandes en Azure Service Bus:
- Solo se admite en espacios de nombres de nivel Prémium de Azure Service Bus.
- Solo se admite cuando se usa el protocolo Advanced Message Queuing Protocol (AMQP). No se admite cuando se usan protocolos SBMP o HTTP en el nivel premium, el tamaño máximo de mensaje para estos protocolos es de 1 MB.
- Se admite cuando se usa el SDK de cliente de Java Message Service (JMS) 2.0 y otros SDK de cliente de lenguaje.
- El envío de mensajes grandes da lugar a una disminución del rendimiento y una mayor latencia.
- Aunque se admiten cargas de mensajes de 100 MB, recomendamos que las cargas de mensajes sean lo más pequeñas posible, con el fin de garantizar un rendimiento confiable desde el espacio de nombres de Service Bus.
- El tamaño máximo del mensaje solo se aplica a los mensajes enviados a la cola o al tema. El límite de tamaño no se aplica para la operación de recepción. Esto permite actualizar el tamaño máximo del mensaje para una cola (o tema) determinada.
- No se admite el procesamiento por lotes.
El 30 de septiembre de 2026, retiraremos el soporte técnico del protocolo SBMP para Azure Service Bus, por lo que ya no podrá usar este protocolo después del 30 de septiembre de 2026. Migre a las bibliotecas más recientes del SDK de Azure Service Bus mediante el protocolo AMQP, que ofrecen actualizaciones de seguridad críticas y funcionalidades mejoradas, antes de esa fecha.
Para obtener más información, consulte el anuncio de retirada de soporte técnico.
Habilitación de la compatibilidad con mensajes de gran tamaño en una nueva cola (o tema)
Para habilitar la compatibilidad con mensajes grandes, establezca el tamaño máximo del mensaje al crear una cola (o tema), como se muestra en la imagen siguiente:
Habilitación de la compatibilidad con mensajes de gran tamaño en una cola (o tema) existente
También puede habilitar la compatibilidad con mensajes grandes para colas existentes (o temas), actualizando el tamaño máximo del mensaje en la información general de esa cola (o tema) específica, como se muestra en la imagen siguiente.
Seguridad de red
Las siguientes características de seguridad de red solo están disponibles en el nivel Premium. Para más información, consulte Seguridad de red.
La configuración del firewall de IP mediante Azure Portal solo está disponible para los espacios de nombres de nivel Premium. Sin embargo, puede configurar reglas de firewall de IP para otros niveles mediante plantillas de Azure Resource Manager, la CLI, PowerShell o la API REST. Para más información, consulte Configuración del firewall de IP.
Cifrado de datos en reposo
Todos los datos almacenados en el subsistema de almacenamiento se cifran mediante claves administradas por Microsoft. Si usa su propia clave (también denominada clave administrada por el cliente), los datos se siguen cifrando mediante la clave administrada por Microsoft, pero además la clave administrada por Microsoft se cifra mediante la clave administrada por el cliente. Esta característica permite crear, rotar, deshabilitar y revocar el acceso a las claves administradas por el cliente que se usan para cifrar claves administradas por Microsoft. La habilitación de la característica de clave administrada por el cliente es un proceso de configuración único en el espacio de nombres. Para más información, consulte Cifrado de datos de Azure Service Bus en reposo.
Partitioning
Hay algunas diferencias entre los niveles Estándar y Premium en lo que respecta a la creación de particiones.
- La creación de particiones está disponible en la creación de la entidad para todas las colas y temas de las SKU básicas o estándar. Un espacio de nombres puede tener entidades con particiones y no particionadas. La creación de particiones está disponible en la creación del espacio de nombres para el nivel premium y se crean particiones de todas las colas y temas de ese espacio de nombres. Las entidades con particiones migradas previamente en espacios de nombres Premium funcionan según lo esperado.
- Cuando la creación de particiones está habilitada en las SKU Básica o Estándar, Service Bus crea 16 particiones. Cuando la creación de particiones está habilitada en el nivel Premium, se especifica el número de particiones durante la creación del espacio de nombres.
Para más información, consulte Creación de particiones en Service Bus.
Recuperación geográfica ante desastres
Azure Service Bus distribuye el riesgo de errores catastróficos de máquinas individuales, o incluso de bastidores completos, entre clústeres que abarcan varios dominios de error en un centro de recursos. Además, implementa mecanismos transparentes tanto de detección de errores como de conmutación por error, de modo que el servicio siga funcionando dentro de los niveles de servicio garantizados y normalmente sin interrupciones apreciables cuando se produzcan dichos errores. Un espacio de nombre prémium puede tener dos o más unidades de mensajería y estas unidades de mensajería se repartirán entre varios dominios de error dentro de un centro de datos, lo que admite un modelo de clúster de Service Bus totalmente activo.
En el caso de un espacio de nombres de nivel premium, el riesgo de interrupción se reparte aún más entre tres instalaciones físicamente separadas (zonas de disponibilidad), y el servicio tiene suficientes reservas de capacidad para hacer frente instantáneamente a la pérdida completa y catastrófica de un centro de datos. El modelo de clústeres totalmente activos de Azure Service Bus dentro de un dominio de error, junto con la compatibilidad con la zona de disponibilidad, es superior a cualquier producto de agente de mensajes local en términos de resistencia contra errores graves de hardware e incluso contra la pérdida catastrófica de instalaciones completas del centro de datos. Aun así, puede haber situaciones graves en las que se produzca una destrucción física generalizada frente a las que ni siquiera estas medidas puedan ofrecer una protección suficiente.
La característica de recuperación ante desastres geográfica (Geo-DR) de Service Bus está diseñada para facilitar la recuperación ante un desastre de esta magnitud y abandonar una región de Azure con errores para que sea correcta sin tener que cambiar las configuraciones de la aplicación. El abandono de una región de Azure suele implicar varios servicios. Esta característica se centra principalmente en ayudar a mantener la integridad de la configuración de la aplicación compuesta. La característica está disponible globalmente para el nivel Premium de Service Bus.
La característica Recuperación ante desastres geográfica garantiza que toda la configuración de un espacio de nombres (entidades, configuración, propiedades) se replique continuamente desde un espacio de nombres principal a un espacio de nombres secundario con el que está emparejado y le permite iniciar una conmutación por error de solo una vez desde la principal a la secundaria en cualquier momento. La conmutación por error vuelve a apuntar el nombre de alias elegido para el espacio de nombres al espacio de nombres secundario y, a continuación, interrumpe el emparejamiento. La conmutación por error es casi instantánea una vez que se ha iniciado.
Para obtener más información, consulte Recuperación ante desastres con localización geográfica de Azure Service Bus.
Replicación geográfica
La característica de replicación geográfica de Service Bus es una de las opciones para aislar las aplicaciones de Azure Service Bus frente a interrupciones y desastres, lo que proporciona replicación de metadatos (entidades, configuración, propiedades) y datos (datos de mensajes y cambios de estado o propiedad de mensaje), mientras que la característica de recuperación ante desastres geográfica descrita en la sección anterior replica solo los metadatos.
La característica Replicación geográfica garantiza que los metadatos y los datos de un espacio de nombres se repliquen continuamente desde una región primaria a una o varias regiones secundarias.
- Colas, temas, suscripciones, filtros.
- Datos, que residen en las entidades.
- Todos los cambios de estado y los cambios de propiedad ejecutados en los mensajes de un espacio de nombres.
- Configuración del espacio de nombres.
Esta característica permite promover cualquier región secundaria a primaria en cualquier momento. La promoción de un punto secundario vuelve a establecer el nombre del espacio de nombres en la región secundaria seleccionada y cambia los roles entre la región primaria y la secundaria. La promoción es casi instantánea una vez iniciada.
Compatibilidad con Java Message Service (JMS)
El nivel Premium admite JMS 1.1 y JMS 2.0. Para más información, consulte Uso de JMS 2.0 con Azure Service Bus Premium.
El nivel estándar solo admite el subconjunto JMS 1.1 centrado en las colas. Para más información, consulte Uso de Java Message Service 1.1 con Azure Service Bus Estándar.
Pasos siguientes
Consulte el siguiente artículo: Actualizar automáticamente las unidades de mensajería.