> Data > Service Broker

Service Broker

Data - Par Jérôme Gabillaud - Publié le 24 juin 2010
email

Service Broker offre la possibilité de travailler en mode asynchrone avec une SQL Server en proposant un service de messagerie fiable entre les instances.

Service Broker

Pour structurer cet échange, Service Broker, utilise la notion de dialogue, de contrat, de messages et de files d’attentes. Le dialogue au sens Service Broker permet un échange de messages entre un émetteur et un récepteur. Les types de messages à la disposition de l’émetteur et du récepteur sont définis par le contrat.

Généralement les exemples que l’on trouve de Service Broker illustre le fonctionnement entre 2 instances SQL Server distinctes. Ce cas précis est parfaitement illustré par le Webcast intitulé Service Broker : concepts et architectures accessible depuis le site des TechDays 2007. Même si c’est dans cette configuration que Service Broker révèle tout son potentiel notamment en donnant beaucoup de souplesse pour travailler avec la base distante, il existe 2 autres cas où il est possible d’utiliser Service Broker : sur une seule base ou bien entre 2 bases sur le même serveur.

Commençons par étudier le premier cas qui consiste à mettre en oeuvre Service Broker sur une base de données. Ce type d’utilisation de Service Broker peut être intéressant, lorsqu’il est nécessaire de répondre ponctuellement à une grosse charge de travail, par exemple des commandes sur un site web. Ainsi, Service Broker permet de prendre en charge les informations de façon quasi immédiate même si l’insertion finale dans la base cible n’est pas fait de façon instantanée. L’application client peut alors être en mesure de signaler que les informations sont correctement prises en charge.

En effet, l’insertion finale peut être relativement longue lorsque de nombreux traitement existent : par exemple des triggers de base de données qui, par leur nature même du code procédurale, ralentissent le traitement des données. Le second cas examiné correspond à la mise en place de Service Broker entre 2 bases hébergées sur une même instance SQL Server. La première base permet d’enregistrer rapidement les informations tandis que la seconde plus structurée, peut être plus lourde, permet de prendre en compte les informations dans leur globalité.

Là aussi, il est possible d’imaginer que la première base sert à enregistrer les prises de commandes, tandis que la seconde héberge la comptabilité de l’entreprise et permet d’affecter le compte client, prépare la facturation, …. Pour expliquer le fonctionnement de Service Broker, il est possible de faire une analogie avec un dialogue qui s’installe entre 2 individus. Le schéma (Voir figure 1) illustre le fonctionnement de service broker.

Téléchargez cette ressource

*** SMART DSI *** VERSION NUMÉRIQUE

*** SMART DSI *** VERSION NUMÉRIQUE

Découvrez SMART DSI, la nouvelle revue du Décideur IT en version numérique. Analyses et dossiers experts pour les acteurs de la transformation numérique de l'entreprise, Gagnez en compétences et expertise IT Professionnelle avec le contenu éditorial premium de SMART DSI.

Data - Par Jérôme Gabillaud - Publié le 24 juin 2010