Messagerie et streaming d'événements
10 guides · environ 2 heures de lecture
Cette page a été traduite de l'anglais avec l'aide de l'IA, puis vérifiée par rapport à l'original. Lire la version anglaise
La messagerie asynchrone découple les systèmes, absorbe les pics de charge et rend les intégrations résilientes — à condition de savoir ce que chaque broker garantit réellement. Ce parcours couvre le modèle du middleware orienté messages, l'API JMS, ActiveMQ et RabbitMQ en profondeur, l'architecture de Kafka fondée sur un journal, et les patterns (files, topics, exchanges, partitions, consommateurs idempotents) qui font fonctionner la messagerie en production.
À qui s'adresse ce parcours
- Développeurs backend qui intègrent des systèmes
- Architectes qui doivent choisir un broker
- Exploitants d'ActiveMQ, RabbitMQ ou Kafka
Parcours d'apprentissage
Lisez dans l'ordre pour suivre un cours complet, ou choisissez le sujet dont vous avez besoin.
- 1Middleware orienté messages : files, topics et communication asynchroneRôle d'un broker de messages, découplage producteurs/consommateurs par files et topics, protocoles existants, et quand préférer la messagerie à un appel HTTP.Débutant12 min de lecture
- 2L'API JMS (Jakarta Messaging 3.1) : sessions, messages, acquittement et sélecteursEnvoyer et recevoir des messages avec jakarta.jms : JMSContext, types et en-têtes, modes d'acquittement, sélecteurs, abonnements durables et request-reply.Intermédiaire10 min de lecture
- 3ActiveMQ Classic 6 : installation, activemq.xml et configuration des transportsInstaller ActiveMQ Classic 6 sous Linux ou Docker, lire activemq.xml, configurer transports, limites mémoire, politiques, failover et réseaux de brokers.Intermédiaire11 min de lecture
- 4ActiveMQ Classic en production : KahaDB, haute disponibilité, sécurité et supervisionFonctionnement de KahaDB, failover sur store partagé ou JDBC, files de messages morts, authentification JAAS, autorisations, TLS et supervision JMX/Jolokia.Avancé11 min de lecture
- 5RabbitMQ et AMQP 0-9-1 : exchanges, bindings, files et routageLe modèle AMQP 0-9-1 de RabbitMQ : channels, types d'exchange, bindings, quorum queues, streams, publisher confirms, acquittements, prefetch, dead letters.Intermédiaire11 min de lecture
- 6RabbitMQ avec Spring AMQP et Spring Boot : RabbitTemplate, @RabbitListener et retriesSpring AMQP dans Spring Boot 3 : files en beans, publication JSON avec RabbitTemplate, consommation par @RabbitListener, confirms, retries et dead letters.Intermédiaire8 min de lecture
- 7Architecture d'Apache Kafka : topics, partitions, réplication, consumer groups et KRaftKafka comme commit log distribué : partitions et offsets, rétention et compaction, réplication et ISR, consumer groups et contrôleur KRaft.Intermédiaire13 min de lecture
- 8Producteurs et consommateurs Kafka en Java : offsets, idempotence et transactionsClients Kafka en Java : batching, acks et idempotence du producteur, boucle de poll, commits d'offsets, rééquilibrages, transactions exactly-once, Spring Kafka.Intermédiaire9 min de lecture
- 9Installer et exploiter Apache Kafka en mode KRaft : mise en place, CLI et supervisionInstallez Kafka 3.x en mode KRaft (Linux ou Docker), configurez brokers et contrôleurs, gérez topics et consumer groups, supervisez, sécurisez, mettez à jour.Intermédiaire8 min de lecture
- 10Patterns de messagerie et garanties de livraison : idempotence, outbox, retries, ordreAt-most-once, at-least-once et exactly-once expliqués, et les patterns qui fiabilisent la messagerie : consommateur idempotent, outbox, retries et ordre.Avancé14 min de lecture
Pour continuer
Architecture logicielleSystèmes en couches, SOA, microservices, DDD, REST et gestion d'API, systèmes réactifs, performance, TOGAF et cohérence distribuée.12 guides →Spring Boot et Spring CloudConstruire, configurer, documenter, tester et déployer des services prêts pour la production avec Spring Boot, Spring Data, Spring Batch et Spring Cloud.11 guides →Java EE / Jakarta EEServeurs d'applications, servlets, JSF, EJB, JMS, JPA, JTA, JAX-RS et XML : la plateforme Java d'entreprise et l'articulation de ses briques.10 guides →