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

État des lieux de la réponse à incident de cybersécurité
Les experts de Palo Alto Networks, Unit 42 et Forrester Research livrent dans ce webinaire exclusif leurs éclairages et stratégies en matière de réponses aux incidents. Bénéficiez d'un panorama complet du paysage actuel de la réponse aux incidents et de sa relation avec la continuité de l'activité, des défis auxquels font face les entreprises et des tendances majeures qui modèlent ce domaine. Un état des lieux précieux pour les décideurs et professionnels IT.
Les articles les plus consultés
Les plus consultés sur iTPro.fr
- Les PME attendent un meilleur accès aux données d’émissions de la part des fournisseurs
- Fraude & IA : Dr Jekyll vs. Mr Hyde, qui l’emporte ?
- Gestion du cycle de vie des outils de cyberdéfense : un levier de performance pour les entreprises
- Top 6 du Cyber Benchmark Wavestone 2025
- La voix met le clavier au placard : une mutation incontournable pour les entreprises
