Vous êtes ici : Accueil du site > Consultation en ligne > Les protocoles > AMQP

AMQP

Développé entre 2004 et 2006 par la banque JPMorgan Chase et iMatix Corporation, il avait pour but de concurrencer le monopole établi par IBM et permettre à tous les éditeurs de l'implémenter dans leurs solutions d'intégration.

AMQP est sous licence GPL (General Public License). Par définition, c'est un protocole gratuit et adaptable aux différentes solutions souhaitées.

Les Middlewares Orientés Message ne se soucient pas du message échangé comme expliqué précédemment. Cependant, le protocole AMQP est un protocole "wire-level". Il décrit le format de données envoyées par l'application A sur le réseau sous forme de flux d'octets. Ainsi, toutes applications pouvant créer et interpréter ce format de données peut interagir avec d'autres applications quel que soit le langage utilisé. Une application JAVA pourra communiquer avec une application .NET sans aucun problème. Le protocole est utilisé entre un client et un serveur. Ce lien est appelé "broker". L'application doit se connecter via ce lien pour rentrer sur le réseau AMQP. Une fois la connexion établie, l'application ouvrira une session et pourra utiliser le protocole pour envoyer ses messages aux différentes applications. Ce protocole s'appuie sur le protocole réseau TCP/IP.

Le cahier des charges définit, pour ce protocole, un système de files d'attente des messages envoyés. Ce n'est pas définit dans les MOM mais AMQP permet de créer des files avec des conditions particulières pour que le message intègre celles-ci. Chaque queue est identifiée par un nom et une adresse. Selon les conditions créées, le protocole enregistrera le message dans la file correspondante. Par exemple, dans le monde industriel, si les messages envoyés sont la production journalière de pièces, la quantité va varier. Les conditions de stockage sur deux files peuvent être les productions inférieures et supérieures à un certain nombre. Les messages seront lisibles que par l'application concernée.

L'avantage de ce protocole est sa souplesse. Il est utilisable dans n'importe quel environnement. De plus, il gère la communication avec simplicité grāce à ses différents systèmes d'échanges applicables. Cependant, le monopole d'IBM ne permet pas ou peu à AMQP de se développer dans ce secteur. Le paiement d'une licence assure au client un suivi. C'est un gage de tranquillité tandis qu'un protocole gratuit demande un déploiement et une gestion quotidienne.