Skip to content
JavaAgentic

Type at least two characters. Try “RAG”, “pgvector” or “tool calling”.

Enterprise Backend · Phase 4

Messaging — RabbitMQ & Apache Kafka

Both brokers, properly. AMQP exchanges and routing, Kafka partitions and consumer groups, Spring AMQP and Spring Kafka, Kafka Streams, Connect, production operations — and a framework for choosing between them.

Beginner7 min read

Messaging Fundamentals & Patterns

The vocabulary and patterns every broker shares: point-to-point versus publish-subscribe, competing consumers, acknowledgement modes, dead-letter queues and delivery guarantees.

Read tutorial
Beginner6 min read

RabbitMQ Architecture & Core Concepts

AMQP 0-9-1 from the ground up: the four exchange types and when each fits, queue properties, bindings and routing keys, prefetch and fairness, and publisher confirms.

Read tutorial
Intermediate6 min read

Spring AMQP & RabbitMQ Integration

Spring AMQP in production: RabbitTemplate and message converters, @RabbitListener containers, manual acknowledgement, retry with backoff, and a dead-letter topology that works.

Read tutorial
Advanced5 min read

RabbitMQ Advanced Patterns

Beyond basic queues: quorum queues and Raft, clustering and partition handling, federation and shovel for multi-datacentre, priority and lazy queues, and delayed delivery.

Read tutorial
Beginner6 min read

Apache Kafka Architecture & Core Concepts

How Kafka actually works: the partitioned log, leaders and in-sync replicas, producer acks and idempotence, consumer groups and rebalancing, and offset management.

Read tutorial
Intermediate7 min read

Spring Kafka Integration

Spring for Apache Kafka in production: KafkaTemplate, @KafkaListener containers, JSON serialisation without trusting the wire, DefaultErrorHandler with backoff, and dead-letter topics.

Read tutorial
Advanced5 min read

Kafka Streams & Stream Processing

Stream processing without a cluster: KStream and KTable semantics, stateless and stateful operations, windowing, joins, exactly-once v2 and testing with TopologyTestDriver.

Read tutorial
Advanced5 min read

Kafka Connect & Data Integration

Moving data in and out of Kafka without writing code: source and sink connectors, Debezium change data capture, single message transforms, and running Connect in distributed mode.

Read tutorial
Advanced5 min read

Kafka in Production

Running Kafka for real: partition and cluster sizing, retention versus compaction, the metrics that predict incidents, the CLI tools worth knowing, and geo-replication.

Read tutorial
Advanced5 min read

Kafka vs RabbitMQ — A Decision Framework

A practical comparison across throughput, latency, ordering, replay, routing and operational cost — with the use cases each one clearly wins, and when to run both.

Read tutorial
Intermediate6 min read

Spring Cloud Stream & Message-Driven Services

One programming model over Kafka and RabbitMQ: functional bindings, destination configuration, per-binder tuning, dead-letter handling and the in-memory test binder.

Read tutorial