StackPractices

messaging

Practical resources about messaging for software engineers.

40 results

Connecting Systems with Messages and Events

When direct API calls become bottlenecks, messaging patterns provide the decoupling and resilience needed for distributed systems. Message queues, event buses, and stream processors handle backpressure, retries, and eventual consistency.

This collection covers recipes for implementing pub/sub patterns, using message brokers like RabbitMQ and Kafka, designing event-driven architectures, and handling dead letter queues. Each pattern includes failure scenarios and recovery strategies.

intermediate

Send Transactional Emails with SMTP in Python, Node.js

Learn to send transactional and bulk emails via SMTP with Python, Node.js, and Java. Covers auth,...

intermediate

Redis Pub/Sub for Cross-Process Messaging

Use Redis pub/sub channels to broadcast events between processes, handle subscriptions, and...

intermediate

Dead Letter Queues

Handle failed messages gracefully with dead letter queues, retry policies, and poison pill...

advanced

Event-Driven Microservices

Design event-driven microservices with message brokers, event sourcing, CQRS, and eventual...

advanced

Implement Event Sourcing with CQRS in Python

Build an event-sourced system with CQRS separation using Python, event store persistence,...

intermediate

Event Streaming with Apache Kafka and Node.js

Build growth-ready event-driven systems using Apache Kafka with producers, consumers, consumer...

advanced

Kafka Consumer Groups with Python for Scalable Streaming

Create Kafka consumer groups in Python with partition assignment, offset management, commit...

intermediate

Consume Kafka Topics with Spring Boot Stream Listeners

Build Kafka consumers in Spring Boot using @KafkaListener annotations, concurrent consumers, error...

advanced

Message Processing Idempotency

Make message processing idempotent so duplicate deliveries don't trigger side effects in...

advanced

Implement the Transactional Outbox Pattern for Reliable

Use the transactional outbox pattern to reliably publish domain events alongside database changes,...

intermediate

Distribute Background Tasks with Python Celery and Redis

Set up Celery with Redis broker for distributed task processing including task chaining, groups,...

intermediate

Configure Dead-Letter Queues in RabbitMQ for Failed Messages

Set up dead-letter queues and exchanges in RabbitMQ with TTL expiry, max length limits,...

intermediate

Build a RabbitMQ Consumer with Python and Pika

Create a RabbitMQ consumer and producer in Python using pika with durable queues, work dispatching,...

intermediate

Task Queues and RPC with RabbitMQ and AMQP

Distribute background tasks and implement request-reply patterns with RabbitMQ using durable...

intermediate

Implement Redis Pub/Sub Messaging in Python

Build real-time pub/sub messaging with Redis and Python including pattern subscriptions, message...

intermediate

Event-Driven Lambda with SQS Triggers and Batch Processing

Process SQS messages with Lambda using batch windows, partial batch responses, error handling, and...

intermediate

Claim Check Pattern

Store large payloads in external storage and pass only a lightweight reference token through the...

advanced

Compensating Transaction Pattern

Undo the effects of a completed transaction by executing a counter-operation, enabling eventual...

intermediate

Dead Letter Channel Pattern

Route unprocessable messages to a separate dead letter queue for inspection and replay. Prevent...

intermediate

Event-Carried State Transfer Pattern

Replicate state changes across services by publishing events that carry the full updated entity...

No results found.