Eventos
31 mar, 23 - 2 abr, 23
Evento de aprendizaje de SQL, Fabric y Power BI más grande. 31 de marzo – 2 de abril. Use el código FABINSIDER para ahorrar $400.
Regístrate hoyEste explorador ya no se admite.
Actualice a Microsoft Edge para aprovechar las características y actualizaciones de seguridad más recientes, y disponer de soporte técnico.
Se aplica a: SQL Server
Azure SQL Managed Instance
El reenvío de mensajes de Service Broker permite a una instancia de SQL Server aceptar mensajes procedentes de fuera de la instancia y enviarlos a una instancia distinta.
Un administrador puede utilizar el reenvío de mensajes para:
Proporcionar conectividad entre servidores en distintos dominios de confianza
Simplificar la administración mediante la creación de una instancia única centralizada que contiene la información sobre enrutamiento de un dominio
Distribuir trabajo entre varias instancias
Cuando el reenvío está habilitado, la tabla de enrutamiento de msdb.sys.routes determina si se reenvía un mensaje que llega desde otra instancia. Si la dirección de la ruta coincidente no es LOCAL, SQL Server reenvía el mensaje a la dirección especificada. En caso contrario, el mensaje se entrega localmente.
Cada mensaje de Service Broker contiene una duración máxima y un recuento del número de veces que el mensaje se ha reenviado. Cuando una instancia reenvía el mensaje, dicha instancia aumenta el recuento en el mensaje. Si el mensaje excede la duración máxima, la instancia de reenvío descarta el mensaje. Esta estrategia evita problemas en situaciones donde puede existir un bucle de enrutamiento.
Una instancia que reenvía un mensaje no reconoce el mensaje al remitente. Solo el destino final lo reconoce. Si el remitente no recibe ningún reconocimiento del destino al cabo de un período de tiempo, vuelve a enviar el mensaje.
Una instancia que realiza el reenvío de mensajes no necesita almacenar los mensajes reenviados. En su lugar, SQL Server retiene los mensajes que se van a reenviar en la memoria. La cantidad de memoria disponible para el reenvío de mensajes se especifica como parte de la configuración del extremo de Service Broker. Esta estrategia permite un reenvío de mensajes eficaz y sin estado. En el caso de que una instancia que realiza el reenvío de mensajes sufra un problema, los mensajes no se pierden. Cada mensaje se mantiene siempre en el remitente hasta que el destino final reconoce el mensaje, como se explica en Protocolos de comunicación de Service Broker.
La vista de administración sys.dm_broker_forwarded_messages contiene información sobre los mensajes que se encuentran en proceso de reenvío por parte de la instancia. Una instancia no conserva los mensajes en proceso de reenvío; estos mensajes solo existen en la memoria. La instancia que envió el mensaje y la instancia que lo recibe conservan los mensajes. La instancia remitente no quita los mensajes hasta que la instancia de destino reconoce la recepción del mensaje.
El reenvío de mensajes de Service Broker no requiere que una instancia de reenvío descifre el mensaje reenviado. Así, solo las bases de datos que participan en la conversación deben tener configurada la seguridad de diálogo.
Sin embargo, como la seguridad de transporte se aplica a las conexiones entre las instancias de SQL Server, cada instancia de SQL Server debe tener la seguridad de transporte correctamente configurada para las instancias con las que se comunica directamente. Por ejemplo, si la instancia A y la instancia B se comunican a través de una instancia de reenvío, ambas instancias deben tener la seguridad de transporte correctamente configurada para la instancia de reenvío. Como las instancias no intercambian mensajes directamente, no deberían tener la seguridad de transporte configurada para comunicarse entre ellas.
Eventos
31 mar, 23 - 2 abr, 23
Evento de aprendizaje de SQL, Fabric y Power BI más grande. 31 de marzo – 2 de abril. Use el código FABINSIDER para ahorrar $400.
Regístrate hoyCursos
Ruta de aprendizaje
Aprenda a crear un sistema de mensajería confiable para sus aplicaciones y descubra cómo sacar provecho de los servicios de aplicaciones sin servidor en Azure.
Certificación
Microsoft Certified: Azure Database Administrator Associate - Certifications
Administre una infraestructura de base de datos de SQL Server para bases de datos relacionales locales e híbridas en la nube mediante las ofertas de bases de datos relacionales PaaS de Microsoft.
Documentación
Aplicaciones de Service Broker - SQL Server
Las aplicaciones de Service Broker se componen de uno o más programas y de los objetos de base de datos que dichos programas usan.
Escalabilidad de Service Broker - SQL Server
Service Broker está diseñado para que las aplicaciones de la base de datos se amplíen correctamente, tanto si la ampliación es horizontal como vertical.
Ejemplos de enrutamiento de Service Broker - SQL Server
Esta sección presenta ejemplos del proceso de enrutamiento de Service Broker.