<br><div class="gmail_quote">On Tue, Nov 4, 2008 at 5:41 PM, Beene, William R. <span dir="ltr">&lt;<a href="mailto:beenewilliamr@gmail.com">beenewilliamr@gmail.com</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
<div class="Ih2E3d">On Tue, Nov 4, 2008 at 4:34 PM, Ben Hood &lt;<a href="mailto:0x6e6562@gmail.com">0x6e6562@gmail.com</a>&gt; wrote:<br>
&gt; William,<br>
&gt;<br>
&gt; On Tue, Nov 4, 2008 at 10:05 PM, Beene, William R.<br>
&gt; &lt;<a href="mailto:beenewilliamr@gmail.com">beenewilliamr@gmail.com</a>&gt; wrote:<br>
&gt;&gt; Is there anyway to preconfigure a queue in rabbitmq before my app that<br>
&gt;&gt; needs the queue starts up.<br>
&gt;&gt; I want data sent to the queue to be persisted so that the app can get<br>
&gt;&gt; it when it starts up.<br>
&gt;&gt; Does this use case make sense? Is this possible? Any pointers would be<br>
&gt;&gt; greatly appreciated.<br>
&gt;<br>
&gt; Why don&#39;t just declare the queue, send the messages that you want to<br>
&gt; pre-populate the queue with (setting the persistent flag when sending)<br>
&gt; and then after this has occurred, start a consumer to receive the<br>
&gt; messages?<br>
&gt;<br>
&gt; HTH,<br>
&gt;<br>
&gt; Ben<br>
&gt;<br>
<br>
</div>Because then the producers would have to know about all of the consumers.<br>
I would rather put this in a property file or something. It looks like<br>
I may have to write a small program that reads a property file and creates<br>
&nbsp;the queues I need.<br>
</blockquote><div><br>William,<br><br>If I understood your question correctly, I don&#39;t see why the producers would need to know all about the consumers.<br><br>The producers publish to an exchange using a routing key. In a simple scenario, the routing key is just a queue name. The producers would have to know the key to be able to publish to that queue.<br>
<br>You can set it up so that whichever actor (consumer or producer) first
tries to access the queue creates it (if the flags are set up to do this). If the consumer gets there first, it will
create an empty queue and sit and wait on it, or come back later and try again. If it&#39;s the producer that first
starts up, it will create the queue, and as long as the messages you
deliver are flagged as persistent (assuming you want them to survive
the rabbit server restart), and not flagged for immediate delivery, the
producer can happily throw stuff in the queue (within reasonable memory
limitations). The consumer(s) may start up at any time and collect the
messages. An application I wrote works very much like this.<br><br>It may seem strange to let the consumers create the
queues but, security aspects aside (assuming that consumers are trusted), it&#39;s a very convenient way to do
what you want to do. (It can be confusing if the consumer uses the wrong queue name, because it may create an empty queue and sit there forever wondering why nobody is talking to it, but that&#39;s true of a lot of things in general).<br>
<br>Does this help?<br><br>Regards,<br>Edwin Fine<br>&nbsp;</div><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;"><br>
Thanks,<br>
<font color="#888888">William Beene<br>
</font><div><div></div><div class="Wj3C7c"><br>
_______________________________________________<br>
rabbitmq-discuss mailing list<br>
<a href="mailto:rabbitmq-discuss@lists.rabbitmq.com">rabbitmq-discuss@lists.rabbitmq.com</a><br>
<a href="http://lists.rabbitmq.com/cgi-bin/mailman/listinfo/rabbitmq-discuss" target="_blank">http://lists.rabbitmq.com/cgi-bin/mailman/listinfo/rabbitmq-discuss</a><br>
<br>
</div></div></blockquote></div><br>