Java Message Service

Un article de Wikipédia, l'encyclopédie libre.
Aller à : navigation, rechercher

L'interface de programmation Java Message Service (JMS) permet d'envoyer et de recevoir des messages de manière asynchrone entre applications ou composants Java. JMS permet d'implémenter une architecture de type MOM (Message Oriented Middleware). Un client peut également recevoir des messages de façon synchrone dans le mode de communication point à point.

L'API JMS permet aux applications Java de s'interfacer avec des intergiciels (middleware) à messages ou MOM. Les MOMs permettent des interactions entre composants applicatifs dans un cadre faiblement couplé, asynchrone et fiable.

Modèles de publication supportés[modifier | modifier le code]

JMS permet l'échange de messages entre deux systèmes ou plus. Ce service supporte le modèle producteur/consommateur et le modèle point à point.

Producteur et Consommateur[modifier | modifier le code]

Dans le modèle producteur-consommateur, des entités s’inscrivent pour recevoir des messages sur un certain sujet. Celui qui publie les messages et ceux qui les reçoivent ne se connaissent pas.

Point à point[modifier | modifier le code]

Pour le modèle point à point, le producteur publie les messages dans une file (queue) et le consommateur lit les messages de la file. Dans ce cas le producteur connaît la destination des messages et poste les messages directement dans la file du consommateur. Pour utiliser ce modèle, le consommateur doit invoquer la méthode receive() qui est bloquante

Versions de l'API JMS[modifier | modifier le code]

  • JMS 1.0.2b, juin 2001
  • JMS 1.1, mars 2002
  • JMS 2.0 (JSR 343), 20 mars 2013

Fournisseurs de service JMS[modifier | modifier le code]

Pour utiliser l'API JMS il est nécessaire d'avoir un fournisseur de service qui gère les connexions, les sessions, les destinations et les messages. Il y a de multiples fournisseurs de service JMS :

Implémentation Open Source[modifier | modifier le code]

Articles sur les implémentations open-source de JMS 

Implémentations commerciales[modifier | modifier le code]

Articles sur les implémentations commerciales de JMS 

Tous les serveurs d'applications Java EE à partir de la version 1.4 doivent fournir un service JMS, ce service doit être accessible au travers de JCA (Java connector architecture).

Liens externes[modifier | modifier le code]