

0 / 2 embers
0 / 3000 xp
click for more info
Complete a lesson to start your streak
click for more info
Difficulty: 3
click for more info
Not enough gems
Cost: 6 gems
1: Nodes and Clusters
incomplete
2: Backpressure
incomplete
3: Healthy Queues Are Empty
incomplete
4: Prefetch
incomplete
5: Quorum Queues
incomplete
This lesson's interactive features are locked, please to keep using them
Generally speaking, there are 2 queue types to worry about:
Classic queues are the default and are great for most use cases. They are fast and simple. However, they have a single point of failure: the node that the queue is on. If that node goes down, the queue is lost.
You might be thinking, "Wait! You told me Rabbit is a distributed system!" And you're right, Rabbit is distributed, but classic queues are not. They are stored on a single node. If that node goes down, the queue is lost, at least until the node comes back online.
Quorum queues are designed to be more resilient. They are stored on multiple nodes, so if one node goes down, the queue is still available. The tradeoff is that because quorum queues are stored on multiple nodes, they are slower than classic queues.
As a general rule, I use classic queues for my ephemeral queues (transient, auto-delete, etc). I use quorum queues for most of my durable queues.