Análisis de Azure Service Bus

Completado

Microsoft Azure Service Bus es un agente de mensajes de integración empresarial completamente administrado. Service Bus puede desacoplar aplicaciones y servicios. Los datos se transfieren entre distintas aplicaciones y servicios mediante mensajes. Un mensaje es un contenedor decorado con metadatos que contiene datos. Los datos pueden ser cualquier tipo de información, como datos estructurados codificados con los formatos comunes, como los siguientes: JSON, XML, Apache Avro, texto sin formato.

Algunos escenarios de mensajería comunes son:

  • Mensajería. Transferir datos empresariales, como pedidos de ventas o compras, diarios o movimientos de inventario.
  • Desacoplar aplicaciones. Mejore la confiabilidad y la escalabilidad de las aplicaciones y los servicios. El cliente y el servicio no tienen que estar en línea al mismo tiempo.
  • Temas y suscripciones. Habilite 1:n relaciones entre publicadores y suscriptores.
  • Sesiones de mensajes. Implemente flujos de trabajo que requieran la ordenación de mensajes o el aplazamiento de mensajes.

Niveles de Service Bus

Service Bus ofrece los niveles Estándar y Prémium. El nivel Prémium de la mensajería de Service Bus aborda solicitudes habituales de los clientes relacionadas con la escala, el rendimiento y la disponibilidad de las aplicaciones críticas. El nivel Prémium se recomienda para escenarios de producción. Aunque los conjuntos de características son prácticamente idénticos, estos dos niveles 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.

Premium Estándar
Capacidad de proceso elevada Capacidad de proceso variable
Rendimiento predecible Latencia variable
Precio fijo Precios según la variante de pago por uso
Posibilidad de escalar y de reducir verticalmente la carga de trabajo N/D
Tamaño de mensaje de hasta 100 MB. Tamaño de mensaje de hasta 256 KB

Características avanzadas

Service Bus incluye características avanzadas que le permiten resolver problemas de mensajería más complejos. En la tabla siguiente, se describen varias de estas características.

Característica Descripción
Sesiones de mensajes Para crear una garantía primero en entrar/primero en salir (FIFO) en Service Bus, use sesiones. Las sesiones de mensajes permiten la administración ordenada y exclusiva de secuencias de mensajes relacionados no enlazadas.
Artículo reenvío automático La característica de reenvío automático encadena una cola o suscripción a otra cola o un tema que se encuentre en el mismo espacio de nombres.
Cola de mensajes fallidos Service Bus admite una cola de mensajes fallidos (DLQ). Una cola con problemas de entrega contiene mensajes que no se pueden entregar a ningún receptor. Service Bus le permite quitar los mensajes de mensajes fallidos e inspeccionarlos.
Entrega programada Puede enviar mensajes a una cola o un tema para el procesamiento retrasado. Puede programar un trabajo para que esté disponible para que lo procese un sistema en un momento determinado.
Aplazamiento de mensajes Un cliente de cola o suscripción puede diferir la recuperación de un mensaje hasta un momento posterior. El mensaje permanece en la cola o la suscripción, pero se reserva.
Lotes El procesamiento por lotes del lado cliente permite a un cliente de cola o tema retrasar el envío de un mensaje durante un período de tiempo determinado.
Transacciones Una transacción agrupa dos o más operaciones en un ámbito de ejecución. Service Bus admite operaciones de agrupación en una sola entidad de mensajería dentro del ámbito de una única transacción. Una entidad de mensaje puede ser una cola, un tema o una suscripción.
Filtrado y acciones Los suscriptores pueden definir los mensajes que quieren recibir de un tema. Estos mensajes se especifican en forma de una o varias reglas de suscripción con nombre.
Eliminación automática en estado inactivo La eliminación automática en modo inactivo le permite especificar un intervalo de inactividad después del cual se elimina automáticamente una cola. La duración mínima es de 5 minutos.
Detección de duplicados Un error puede hacer que el cliente tenga dudas sobre el resultado de una operación de envío. La detección de duplicados permite que el remitente vuelva a enviar el mismo mensaje, o bien, en el caso de una cola o un tema, que se descarten las copias duplicadas.
Protocolos de seguridad Service Bus admite protocolos de seguridad como las firmas de acceso compartido (SAS), el Control de acceso basado en rol (RBAC) y Entidades administradas para recursos de Azure.
Recuperación ante desastres geográfica Cuando las regiones o los centros de datos de Azure experimentan un tiempo de inactividad, la recuperación ante desastres geográfica permite que el procesamiento de datos siga funcionando en una región o un centro de datos diferentes.
Seguridad Service Bus admite los protocolos estándar AMQP 1.0 y HTTP/REST.

Cumplimiento de estándares y protocolos

El protocolo de conexión principal de Service Bus es Advanced Message Queuing Protocol (AMQP) 1.0, un estándar abierto ISO/IEC. Este protocolo permite a los clientes escribir aplicaciones que funcionan en agentes de Service Bus y locales, como ActiveMQ o RabbitMQ. En la guía del protocolo AMQP se proporciona información detallada en caso de que quiera crear una abstracción de este tipo.

Service Bus Premium es totalmente compatible con la API Java Message Service (JMS) 2.0 de Java/Jakarta EE.

Bibliotecas de clientes

Todas bibliotecas cliente de Service Bus están disponibles a través de Azure SDK.