Actuellement, le besoin de rendre les systèmes ou les applications interopérables est indéniable. Pour ce faire, de nombreuses technologies ont vues le jour. Il peut s'agir des MOM (Message-Oriented Middleware), des protocoles de communication entre les applications clientes et serveurs (REST, Soap, RMI, ...), de solutions propriétaires utilisées pour permettre la communication entre les serveurs pour des problématiques de réplication ou de synchronisation ou même de solutions basées sur le paradigme NoSQL.
Cependant, il est important de ne pas oublier que nos couches basses restent les protocoles TCP ou UDP et que répondre par un grand concept tel que MOM, réplication de serveurs ou cache distribué sur une problématique ne permet pas de savoir ce qui se trame derrière...
Un produit souvent méconnu est utilisé en interne pour les problématiques de communication entre serveurs et même si, à ce jour, je ne connais pas d'implémentations de MOM qui l'utilise, il pourrait être un très bon candidat pour ces dernières en interne. Il s'agit de JGroups.
Aussi, cet article va tenter de donner un rapide tour d'horizon sur JGroups en présentant ses concepts. Il s'appuiera sur sa version stable courante, à savoir la version 2.11.0.
A noter que ce tour d'horizon s'appuie très fortement sur le manuel de référence de JGroups.
A noter que ce tour d'horizon s'appuie très fortement sur le manuel de référence de JGroups.