Traitement JMS par lots avec Talend ESB

La gestion des messages dans des files JMS est caractérisée par un élément important, 1 contenu pour 1 message dans 1 file. Cela permet aux consommateurs de choisir avec finesse les contenus manipulés. Cela offre aussi des solutions de routage, de transformation, et de rejeux simples pour chaque message. Ceci de façon maîtrisée et transactionnelle. En résumé, dans les architectures orientées messages, l’adhérence faible entre consommateur et producteur de contenu est un point fort indéniable.

L’inconvénient est que les traitements unitaires sont coûteux en ressources. Lors de fortes quantités de messages, il est toutefois préférable de lotir ces traitements. Cette technique est d’ailleurs empruntée aux ETL.

Une de mes dernières réalisations a été de réaliser, sur la plateforme Talend ESB, des envois par lots à elasticsearch. Les clients JMS classiques étaient bien trop lents et très consommateurs de CPU. Plusieurs serveurs étaient nécessaires à ces envois. Ce client JMS par lots a définitivement supprimé cette forte contention et réduit nos charges CPU.

Lire la suite