<div class="gmail_quote">On Thu, Jan 26, 2012 at 4:00 AM,  <span dir="ltr">&lt;<a href="mailto:rabbitmq-discuss-request@lists.rabbitmq.com">rabbitmq-discuss-request@lists.rabbitmq.com</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<div id=":1fq">My question is, what are the vhosts for, are they required ? If not<br>
then what are the advantages of using them ?</div></blockquote></div><br><div>Virtual hosts give you namespace separation.  All users, exchanges, queues and bindings in each virtual host are unreachable from all other virtual hosts.  This is a good feature to use if you want ensure compartmentalization.</div>
<div><br></div><div>Alas, if you are like us, you&#39;d like to compartmentalize customer data using virtual hosts, but you&#39;d also like to shuffle some data among those virtual hosts (e.g. from a a primary VH to individual customer VHs), but this becomes impractical in a dynamic environment.</div>
<div><br></div><div>The only want to shuffle that data among VHs it to use the shovel or federation plugins, and both require that you restart the nodes hosting them to make any changes (e.g. add a customer and thus add a shovel to their own virtual host).</div>
<div><br></div><div>Elias</div><div><br></div>