Hi to the OpenStack development team.  I am a newbie and this is my first post.  I apologize now if I am posting this to the wrong place or break some rule and promise to do better in the future.  Now for the reason for this post...<br>
<br>

<p class="MsoNormal">I have been investigating why RabbitMQ does not scale for
Openstack RPCs.<span style>  </span>I haven’t found any
information online that explains why this opinion is widely held.<span style>  </span>From the testing I have done, I have come to
the conclusion that the scaling problem might be limited to RPC calls, as
opposed to RPC casts, and that it is mostly due to AMQP usage pattern coming from
Openstack RPC and perhaps not an inherent problem of RabbitMQ, although my
personal opinion is that RabbitMQ is pretty heavy weight in terms of CPU burn.<span style>  </span>The dynamic creation and deletion
of an Exchanges and a Queues for the delivering of RPC responses is the primary
culprit for this lack of scalability.<span style>  </span>My data implies, if not proves,
that RabbitQM replicates (in a clustered environment) each creation and deletion of exchanges and queues and
that this replication is a serialization point that prevents concurrency.<span style>  </span>I have found that maximum concurrent RPC rates decrease
as more RabbitMQ hosts are added to the cluster, again due to the increased replication workload.<br></p>

<p class="MsoNormal"> </p>

<p class="MsoNormal">My question is whether anyone thinks it is a worthwhile effort
to investigate code changes to the Openstack RPC that would make the RPC
responses flow on static exchanges and queues?<span style> 
</span>Or is the general opinion that RabbitMQ is not good for other reasons
and effort should be spent on some other transport?<span style>  </span>Or has this been thought of and rejected as
too hard?<span style>  </span>Or is someone already working
on it?<span style>  </span>I would like to work on something
worthwhile with regards to Openstack performance and not duplicating any else’s
short term effort.</p>

<p class="MsoNormal"> </p>

<p class="MsoNormal">Ray</p>

<br>