Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
S’applique à :SQL Server
Azure SQL Managed Instance
Le transfert de messages Service Broker permet à une instance SQL Server d'accepter des messages provenant de l'extérieur pour les envoyer à une instance différente.
Un administrateur peut utiliser le transfert de messages pour :
Assurer la connectivité entre les serveurs de différents domaines de confiance.
Simplifiez l’administration en créant une seule instance centralisée qui contient les informations de routage d’un domaine.
Distribuez le travail entre plusieurs instances.
Lorsque le transfert est activé, c'est la table de routage dans msdb.sys.routes qui détermine si un message provenant d'une autre instance est transféré. Si l’adresse de l’itinéraire correspondant n’est pas LOCAL, SQL Server transfère le message à l’adresse spécifiée. Sinon, le message est remis localement.
Chaque message Service Broker présente une durée de vie maximale et un comptage du nombre de fois que le message est transféré. Lorsqu’une instance transfère le message, cette instance augmente le nombre dans le message. Si le message dépasse la durée de vie maximale, l'instance assurant le transfert ignore le message. Cette stratégie permet d’éviter les problèmes dans les situations où une boucle de routage peut exister.
Transfert et livraison fiable
Une instance qui transfère un message ne reconnaît pas le message à l’expéditeur. Seule la destination finale s'acquitte de cette tâche. Si l’expéditeur ne reçoit pas d’accusé de réception de la destination après une période de temps, l’expéditeur retente le message.
Une instance qui effectue le transfert de messages n’a pas besoin de stocker les messages transférés. SQL Server conserve ces messages en mémoire. La quantité de mémoire disponible qui est réservée au transfert de messages est précisée au niveau de la configuration du point de terminaison Service Broker. Grâce à cette stratégie, l'efficacité d'un transfert de messages sans état est garantie. Au cas où une instance chargée du transfert tomberait en panne, aucun message n'est perdu. Chaque message est toujours conservé à l’expéditeur jusqu’à ce que la destination finale reconnaisse le message, comme décrit dans les protocoles de communication Service Broker.
La vue sys.dm_broker_forwarded_messages de gestion contient des informations sur les messages actuellement en cours de transfert par l’instance. Une instance ne conserve pas les messages dans le processus de transfert ; ces messages existent uniquement en mémoire. L'instance qui envoie le message et l'instance qui le reçoit conservent les messages. L’instance d’envoi ne supprime pas le message tant que l’instance de réception n’a pas reçu le message.
Sécurité et transfert
Le transfert de messages Service Broker ne nécessite pas qu'une instance de transfert déchiffre le message transféré. Ainsi, la sécurité du dialogue doit être uniquement configurée sur les bases de données participant à la conversation.
Toutefois, dans la mesure où la sécurité du transport s'applique aux connexions existant entre les instances SQL Server, la sécurité du transport doit être correctement configurée sur chacune de ces instances par rapport aux instances avec lesquelles elle communique directement. Par exemple, si l'instance A et l'instance B communiquent via une instance de transfert de messages, la sécurité du transport des instances A et B doit être convenablement configurée par rapport à l'instance chargée du transfert. Étant donné que les instances n’échangent pas directement de messages, la sécurité du transport ne doit pas être configurée pour communiquer entre elles.
Contenu connexe
- CRÉER UN POINT D'ACCÈS (Transact-SQL)
- ALTER ENDPOINT (Transact-SQL)
- sys.dm_broker_forwarded_messages (Transact-SQL)
- sys.routes (Transact-SQL)
- sys.transmission_queue (Transact-SQL)
- Mise en réseau et routage du Service Broker
- Points de terminaison de Service Broker
- Sécurité de la boîte de dialogue Service Broker
- Sécurité du transport Service Broker