<div>
            <div>
                <span>
                    <br>
                </span>
                <span></span>
                
                <!-- <p style="color: #a0a0a0;">On Saturday, April 23, 2011 at 6:16 AM, can xiang wrote:</p> -->
                <p style="color: #a0a0a0;">On Saturday, April 23, 2011 at 6:16 AM, can xiang wrote:</p>
                <blockquote type="cite" style="border-left-style:solid;border-width:1px;margin-left:0px;padding-left:10px;">
                    <span><div><div>5. no_ack = True<br>6. SimpleReconnectionStrategy for reconnection<br><br>When I'm testing the server die scenario. I found three issues:<br>
<br>ISSUE 1:<br>=======<br>Stop rabbitmq server, tornado application raises the following exception and become not responsive:<br><br>error: [Errno 111] Connection refused<br></div></div></span></blockquote><div>Hmm interesting point in that. I don't think I've used the SRS+Tornado combination. &nbsp;The exception is expected. &nbsp;Please open an issue at http://github.com/pika/pika and I'll see if I can get a fix so SRS can work.&nbsp;</div><blockquote type="cite" style="border-left-style:solid;border-width:1px;margin-left:0px;padding-left:10px;"><span><div><div>ISSUE2:<br>=======<br>I tested 800 messages, with slow consumer. while it runs, stop rabbitmq-server with Ctrl+C, consumer is able to continuing consuming message and finish all 800 messages, then it EXIT.<br>
<br>It's very weird indeed, because the server already gone. Is there any incoming message buffer in pika?</div></div></span></blockquote><div>There is an inbound buffer.</div><blockquote type="cite" style="border-left-style:solid;border-width:1px;margin-left:0px;padding-left:10px;"><span><div><div>How many messages can be buffered? </div></div></span></blockquote><div>Never tested for an upward limit on this.</div><blockquote type="cite" style="border-left-style:solid;border-width:1px;margin-left:0px;padding-left:10px;"><span><div><div>Are those message stored in memory?</div></div></span></blockquote><div>Yes</div><div>&nbsp;Is it possible to configure the memory usage?</div><div><br></div><div>No.</div><div><br></div><div>I would switch to using Basic.Ack and control when you get a message instead of have the server throw them at you.</div><blockquote type="cite" style="border-left-style:solid;border-width:1px;margin-left:0px;padding-left:10px;"><span><div><div>
<br>ISSUE3:<br>=======<br>In my use case, it's very important the tornado application wouldn't die for any reason. If there is anything bad happened to the rabbitmq-server or connection, messaging system can be down-graded as a not functioning part, which can go back automatically when server issues resolved. The long running consuming process shouldn't die or exit when server died or connection broken. Is this requirement sensible enough? <br>
<br>I hope SimpleReconnectionStrategy works for my case, which is not. Is there anything wrong in my application code? Or I just roll my own one, any suggestion on how to do it?<br></div></div></span></blockquote><div>It should, I think I'm missing catching the exception here. &nbsp;Please open the issue and I'll see if we can get a fix into 0.9.6 which is ready to be released pending documentation updates.</div><div><br></div><div>Thanks,</div><div><br></div><div>Gavin</div>
            </div>
        </div>