Camel RabbitMQ consumer: what's the interaction between concurrentConsumers and threadPoolSize options?
<p><a href="http://camel.apache.org/rabbitmq.html" rel="noreferrer">Camel RabbitMQ component</a> allows setting both the option <code>concurrentConsumers</code> and <code>threadPoolSize</code>. Their description and defaults is as follows:</p>

<blockquote>
  <p><code>concurrentConsumers</code> - default 1 - Number of concurrent consumers
  when consuming from broker. (eg similar as to the same option for the
  JMS component).</p>
  
  <p><code>threadPoolSize</code> - default 10 - The consumer uses a Thread Pool
  Executor with a fixed number of threads. This setting allows you to
  set that number of threads.</p>
</blockquote>

<p>Could someone explain how these two will interact, particularly from the performance standpoint?</p>

<p>In particular, going into nuance a bit:</p>

<ol>
<li>Are they roughly interchangeable? I.e. is it roughly true that 2 consumers, 5 threads ~ 5 consumers, 2 threads?</li>
<li>Does each concurrent consumer get as many threads as specified in <code>threadPoolSize</code> or are these threads shared between all concurrent consumers?</li>
</ol>

<p>Many thanks!</p>