Présentation du service de messagerie Web

Le service de messagerie Web est une implémentation d'abonnement et de publication qui relie le navigateur au bus d'intégration de service (SIBus) de WebSphere® Application Server pour insérer des événements côté serveur. La communication client/serveur s'effectue via le protocole Bayeux. Bayeux est un protocole de routage de messagerie basé sur HTTP. Pour plus d'informations, reportez-vous au site Web de Bayeux et cometd. Le toolkit Dojo fournit la prise en charge du protocole Bayeux par le client. Actuellement, le toolkit Dojo est la seule bibliothèque JavaScriptTM qui prend en charge de protocole Bayeux. Quoi qu'il en soit, n'importe quelle bibliothèque JavaScriptTM ou client HTTP implémentant la prise en charge du protocole Bayeux peut établir une communication avec le service de messagerie Web. L'implémentation du service de messagerie Web crée un pont entre les demandes Bayeux entrantes et le bus d'intégration de service, ce qui permet aux services Web, aux clients JMS ou à n'importe quel élément relié au bus d'intégration de service de publier des événements sur des clients basés sur le Web. Vous pouvez utiliser le service de messagerie Web dans une nouvelle application ou une application existante en plaçant un fichier JAR (run time Java archive) dans WebSphere Application Server, en plaçant un fichier JAR de la bibliothèque de fichier d'utilitaires dans un module d'application Web, en définissant un simple fichier de configuration et en configurant des mappages de servlet.

Figure 1 : Architecture générale :

Diagramme d'ensemble


Figure 2 : Architecture du serveur :
Diagramme Serveur

Evolutivité

Dans une application typique, un navigateur effectue une demande de mise à jour périodique à partir d'un serveur, en respectant un intervalle spécifié ou lors d'une scrutation. Les types de communication avec le protocole Bayeux se distinguent du modèle d'interrogation classique. La communication est effectuée via une connexion HTTP durable au cours de laquelle un serveur maintient une connexion ouverte pendant un certain temps dans l'attente des événements envoyés vers le navigateur. Avec ce style de communication, le conteneur Web ne peut pas exécuter une mise à l'échelle étant donné que chaque client en attente utilise une unité d'exécution en attendant l'arrivée d'un événement. Les autres serveurs qui manipulent ce style de demande disposent de différentes méthodes de mise à l'échelle. Etant donné que le service de messagerie Web est compatible avec les versions existantes de WebSphere Application Server et que le contenu Web actuel ne peut pas effectuer une mise à l'échelle adéquate de cette méthode de communication, un nouveau mécanisme a été introduit dans le service de messagerie Web afin d'atteindre l'évolutivité.

Ce nouveau mécanisme bénéficie de l'architecture Channel Framework (structure de canaux) et permet de créer un canal Channel Framework qui étend le canal HTTP pour relier les demandes Bayeux entrantes et le bus d'intégration de service.

Intégration du toolkit Dojo

La prise en charge actuelle du navigateur du service de messagerie Web est rendue possible grâce au module client cometd du toolkit Dojo. Les opérations d'initialisation, d'abonnement, de désabonnement et de publication sont faciles à accomplir via le client cometd. Les événements émis par le serveur sont intégrés dans l'événement de Dojo et le système de rubrique, par l'intermédiaire du client cometd. Les exemples de syntaxe Dojo cometd sont fournis dans le Guide des développeurs d'Ajax et l'exemple d'application Quote Streamer.

Connectivité du bus d'intégration de services

Le service de messagerie Web relie des clients de navigation au moteur de messagerie intégré et au bus d'intégration de service afin de s'abonner à des événements et d'en publier, ainsi que de recevoir des messages. Le pont sous-jacent au bus d'intégration de service est établi via des appels d'API directs vers un espace de rubrique de bus d'intégration de service. Il existe divers moyens de publication de messages sur des clients Web, étant donné que ces clients sont connectés au bus d'intégration de service. Certaines de ces options incluent EJB (Enterprise JavaBeans) standard publiant sur une rubrique, un client JMS publiant sur une rubrique, un service Web ou le client Web lui-même publiant sur d'autres clients Web.



Conditions d'utilisation | Commentaires