title: What is the difference between RabbitMQ exclusive queue vs. exclusive consumer?
body: <p>Having trouble wrapping my ahead around the differences between <code>exclusive queue</code> and <code>exclusive consumer</code>, and was wondering if I had this correct.</p>
  
  <p>Let's say I have a <code>queue</code>, <code>consumer1</code>, and <code>consumer2</code>.</p>
  
  <p>My understanding is:</p>
  
  <p><strong>exclusive queue</strong></p>
  
  <p>If <code>queue</code> is <code>exclusive queue</code> and was created by <code>consumer1</code>, only <code>consumer1</code> can access the queue, and when <code>consumer1</code> goes down, <code>queue</code> is deleted. It sounds like messages are then lost.</p>
  
  <p><strong>exclusive consumer</strong></p>
  
  <p>If <code>queue</code> is NOT exclusive and was created by <code>consumer1</code>, then both <code>consumer1</code> and <code>consumer2</code> can read from it. If <code>consumer1</code> goes down, <code>consumer2</code> can pick up where it left off. If <code>consumer1</code> is <code>exclusive consumer</code> and starts a subscription first, then <code>consumer2</code> cannot access <code>queue</code>, while it is locked by <code>consumer1</code>.</p>
  
  <p><code>exclusive queue</code> sounds like a weird use case to me whereas <code>exclusive consumer</code> sounds like the proper solution for "only 1 consumer should process from the queue at a time".</p>