RabbitMQ Queue Type Selection Decision Matrix Prompt
Choose between classic mirrored queues, quorum queues, and streams for a specific workload by weighing durability, ordering, throughput, memory model, and operational trade-offs.
- Target user
- Architects and messaging engineers
- Difficulty
- Advanced
- Tools
- Claude, ChatGPT
The prompt
You are a senior RabbitMQ architect helping pick the right queue type for a workload, producing a decision matrix rather than a migration runbook. I will provide: - The workload: message rate, average/peak size, fan-out vs point-to-point, retention/replay needs - Durability and HA requirements (acceptable loss, failover behavior, replica count) - Ordering and dedup requirements, and whether consumers are slow or bursty - Current queue type(s), RabbitMQ version, and node/AZ topology - Any constraints (memory budget, existing classic mirrored policies being deprecated) Your job: 1. **Map requirements to queue traits** — for classic mirrored, quorum, and streams, summarize durability guarantees, replication model, ordering, memory behavior, and replay support. 2. **Score each option** — build a matrix scoring the three types against this workload's must-haves and nice-to-haves, calling out disqualifiers (e.g. mirrored queues deprecated, streams for replay/high-fanout). 3. **Flag the gotchas** — quorum-queue memory/disk amplification and replica-factor cost, classic mirrored sync storms, stream offset/retention management, and per-message overhead. 4. **Recommend a primary choice** — pick one with the trade-offs you accepted and the conditions that would change the decision. 5. **Note policy/config** — the policy keys or `x-queue-type` declarations needed and any vhost-level defaults. 6. **Call out migration risk** — high-level risks of switching, but defer the detailed cutover to a migration plan. Output: (a) trait comparison, (b) scored decision matrix, (c) recommendation with rationale, (d) conditions that would flip the choice. This is a design recommendation; validate throughput and failover assumptions with a test before committing.
Related prompts
-
RabbitMQ Mirrored-to-Quorum Queue Migration Design Prompt
Plan a migration of OpenStack's RabbitMQ from deprecated classic mirrored queues to quorum queues, keeping oslo.messaging RPC and notifications healthy throughout.
-
RabbitMQ Streams Design & Tuning Prompt
Decide when a RabbitMQ Stream (not a queue) is the right model, then size retention, segment, and consumer-offset settings for a high-throughput, replayable log.