What are RabbitMQ queues?
Answer
A queue in RabbitMQ is a buffer that stores messages until they are consumed. Messages are stored in FIFO order by default. Key queue properties: Name: unique identifier (or auto-generated). Durable: queue survives a broker restart. Non-durable queues are lost on restart. Exclusive: accessible only to the declaring connection; deleted when the connection closes. Auto-delete: deleted when all consumers disconnect. Arguments: x-message-ttl (expire messages), x-max-length (max messages), x-dead-letter-exchange (where rejected messages go). Quorum queues: replicated across nodes using Raft consensus — the modern replacement for classic mirrored queues. Classic queues: single-node or mirrored (deprecated in favor of quorum). Stream queues: like Kafka topics — retain messages for replay, support multiple consumers. Queue durability + persistent messages ensures messages survive broker restarts.