I.8.4.4 Des échanges asynchrones
Les échanges de messages mis en oeuvre par les MOMs
sont asynchrones. Cela signifie que les applications ne sont pas en attente
d'une réponse à leur message. En fait, il est possible qu'un
message de réponse soit attendu, mais dans ce cas il n'y a pas de
délai garanti pour cette réponse, de sorte que l'application ne
doit pas se bloquer en attente de la réponse, et encore moins faire
attendre un utilisateur. Le caractère asynchrone ne dit rien quant au
délai d'acheminement du message : il peut être très rapide,
de quelques millisecondes à peine, mais il ne doit pas être
considéré comme assuré.
I.8.4.5 Des échanges fiables
L'une des qualités attendues des MOMs est de garantir
l'acheminement des messages quelles que soient les circonstances, les
aléas, et en particulier y compris dans le cas où la
connectivité réseau est interrompue, où le serveur distant
est arrêté, ou bien où l'application destinatrice n'est pas
en mesure de réceptionner les messages. Dans tous ces cas de figure, le
MOM doit conserver les messages qui lui sont confiés jusqu'à ce
qu'ils aient été remis, et même, jusqu'à ce qu'ils
aient été correctement traités par l'application
destinatrice.
Nous verrons que cette fiabilité de l'acheminement peut
être rendue plus ou moins forte, selon les paramètres et la
configuration du MOM.
Les échanges à base de MOM ne sont pas, par
nature, en mode requête / réponse, comme peut l'être un
échange HTTP par exemple. Il estpossible bien sûr que
l'application destinatrice émette à son tour unmessage, que l'on
peut considérer comme une réponse, mais il s'agitalors seulement
d'une utilisation particulière du MOM.
I.8.4.6 Brokers
Les brokers sont des programmes gérant le flux de
messages. En d'autres termes, un MOM est composé d'un ou de plusieurs
brokers. Comme le montre la figure suivante, c'est avec les brokers que les
applications clientes communiquent, au travers de l'API.
Figure I.6: Architecture MOM à plusieurs
brokers
Un broker est un serveur au sens logiciel du terme,
c'est-à-dire un processus qui est à l'écoute des
requêtes qui peuvent lui être adressées par d'autres
processus, les applications clientes.
Une plateforme MOM ou plateforme middleware est donc
constitué d'un ensemble des brokers et des passerelles.
I.8.4.7 Protocoles et APIs
Lorsqu'une application échange avec un broker, par
exemple pour lui remettre un message, et de même lorsqu'un broker
échange avec un autre broker, ces échanges mettent en oeuvre un
protocole réseau. Le protocole définit les commandes
invoquées et leurs paramètres, ainsi que la représentation
des données, entêtes et corps, constituant les messages.
|