- What is RabbitMQ - Message broker concept - Why RabbitMQ exists - Real-world analogy
- Producer - Consumer - Broker - Message - Queue - Exchange - Binding - Routing Key - Virtual Host (vhost) - Channel - Connection
- Direct Exchange - Fanout Exchange - Topic Exchange - Headers Exchange - Default Exchange - Use cases - Routing examples
Producer → Exchange → Queue → Consumer
- Durable queue - Transient queue - Exclusive queue - Auto-delete queue - Queue TTL - Message TTL - Dead Letter Queue (DLQ) - Dead Letter Exchange (DLX) - Priority queue - Lazy queue - Quorum queue - Stream queue - Single Active Consumer
- ACK - NACK - Reject - Redelivery - Prefetch / QoS - Retry pattern - Poison message - Idempotency - At least once - At most once - Exactly once (why hard)
- Durable exchange - Durable queue - Persistent message - Disk vs memory - Crash recovery
- Cluster - Node - Metadata replication - Queue location - Network partition
- Mirrored queue (legacy) - Quorum queue - Leader/Follower - Failover
- Federation - Shovel - Multi-datacenter
- Authentication - Authorization - TLS - User permissions - vhost isolation
- Prefetch tuning - Connection/channel pooling - Queue design - Backpressure - Throughput optimization
- Management UI - Metrics - Queue depth - Consumer lag - Prometheus + Grafana
- Work Queue - Pub/Sub - Routing - RPC - Saga/Event-driven - Outbox + RabbitMQ - Retry + DLQ - Delay queue
- Architecture - Ordering - Replay - Throughput - Use cases - When to use both
- amqp091-go - Producer example - Consumer example - Clean Architecture integration - Outbox relay
- Naming conventions - Queue ownership - Retry strategy - Error handling - Scaling consumers - Production checklist
https://drive.google.com/file/d/1W0w6Au8RTOPfMOx0gRfbPZltjMmcRwa_/view?usp=sharing