Maintenant que tous les éléments sont définis, il est possible d'initialiser une conversation au sens Service Broker. Pour mener à bien cette tâche le Transact SQL s'est enrichi des termes suivants : BEGIN DIALOG CONVERSATION, MOVE DIALOG, GET CONVERSATION GROUP, END CONVERSATION, SEND, RECEIVE, GET TRANSMISSION STATUS, BEGIN CONVERSATION TIMER.
Etablir le dialogue
La syntaxe détaillée de ces différentes instructions est disponible dans la documentation en ligne de SQL Server 2005, mais une utilisation de quelques une de ces instructions est illustrée avec les exemples qui suivent. Dans l e premier exemple, illustré ci-dessous, l’initiateur et la cible de la conversation, respectivement service 1 et service 2 sont exécutés sur la même base et depuis le même script. Le message au format xml est transmis à la cible qui le récupère depuis la file d’attente associée au service cible, c’est à dire dans ce cas la file 2 qui est la file d’attente associée à sevice 2.
Cet exemple simple, permet de valider simplement l’ensemble de la structure mise en place et d’illustrer les instructions spécifiques au dialogue entre les 2 services.
begin tran
— Exemple d’utilisation de service broker
DECLARE @identifiantConversation UNIQUEIDENTIFIER
— Initier le dialogue
BEGIN DIALOG CONVERSATION @identifiantConversation
FROM SERVICE service1 TO SERVICE ‘service2’
ON CONTRACT ContratExemple WITH ENCRYPTION=OFF;
— Envoyer un message
declare @messagePersonnalise xml;
set @messagePersonnalise=
N'<client><nom>DUPONT</nom><prenom>Jean</prenom></client>’;
SEND ON CONVERSATION @identifiantConversation
MESSAGE TYPE MResultat (@messagePersonnalise);
commit tran;
begin tran
— Lire le message depuis la file d’attente
declare @messageRecu TABLE(
NomService NVARCHAR(512),
NomContrat NVARCHAR(256),
TypeMessage NVARCHAR(256),
msg NVARCHAR(MAX));
WAITFOR(
RECEIVE TOP (1) service_name, service_contract_name,message_type_name, message_ body
FROM file2
INTO @messageRecu
),TIMEOUT 10;
select * from @messageRecu;
— Mettre fin a la conversation
END CONVERSATION @identifiantConversation;
commit tran;
Téléchargez cette ressource
Plan de sécurité Microsoft 365
Les attaquants savent comment prendre le contrôle de votre tenant Microsoft 365, et vous, savez-vous comment le reprendre en main ?
Les articles les plus consultés
Les plus consultés sur iTPro.fr
- Des Master Data aux data products : comment l’IA redéfinit le rôle du MDM
- Communication d’entreprise : la voix s’impose à nouveau comme canal critique à l’ère de l’IA
- Réforme de la facturation électronique : une préparation largement théorique
- Le futur de la cryptographie post-quantique
Articles les + lus
Couchbase lance AI Data Plane pour industrialiser l’IA agentique
Windows 11 : Microsoft généralise le point-in-time restore pour accélérer la remise en service des PC
Computex 2026 : 5 signaux forts à retenir
La chaîne d’approvisionnement, point de rupture récurent du SI
Microsoft Build 2026 : contre-offensive des modèles maison face à OpenAI et Anthropic
À la une de la chaîne Tech
- Couchbase lance AI Data Plane pour industrialiser l’IA agentique
- Windows 11 : Microsoft généralise le point-in-time restore pour accélérer la remise en service des PC
- Computex 2026 : 5 signaux forts à retenir
- La chaîne d’approvisionnement, point de rupture récurent du SI
- Microsoft Build 2026 : contre-offensive des modèles maison face à OpenAI et Anthropic
