Hi Mattias,<div><br></div><div>Many thanks for the reply.</div><div><br><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
Did you check with lsof/netstat on the *client* machine whether the sockets are really dead there?<br>
</blockquote><div><br></div><div>Yes -- the client ports that lsof reports open on the RabbtMQ server machine aren&#39;t listed in the client machine; for example, on the server I can see:</div><div><br></div><div><div>beam.smp 22933 rabbitmq   23u  IPv4 44493222       TCP 10.2.7.11:5672-&gt;<a href="http://10.2.2.11:33748" target="_blank">10.2.2.11:33748</a> (ESTABLISHED)</div>

<div><br></div><div>but on the client machine (10.2.2.11) I don&#39;t see a socket from port 33748.  Right now, if I count the total number of sockets with port 5672 and grep for the address of the other machine, I see 28 connections on the client and 49 on the server (including the one I listed above).</div>

<div><div> </div></div></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
Also, are these connections going via some kind of firewall or loadbalancer? If so, perhaps the connections to the server are kept open there.<div></div></blockquote><div><br></div><div>I started to type &quot;no&quot; but then decided to confirm this and turns out that the connection does indeed go through a firewall.  I tend to think of firewalls as just blocking ports, but you&#39;re right -- perhaps there&#39;s more going on.  I&#39;ve asked a network engineer to check the configuration.</div>

<div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div>
<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
If that fails, is there a configuration option that lets RabbitMQ close broken connections?<br>
</blockquote>
<br></div>
AMQP&#39;s heartbeat mechanism is designed precisely for this situation. The heartbeat frequency is negotiated between the client and the server at connection establishment. I don&#39;t know anything about the Ruby client, but I am assuming from the above that it disables heartbeats. If so, try to find a way to enable them.</blockquote>

<div><br></div><div> Coincidentally, the developer of the interface library I&#39;m using announced this morning that the latest version includes a heartbeat parameter.  I&#39;ll try that as soon as possible.</div><div><br>
</div><div>Thanks again,</div><div>Mark</div><div><br></div></div></div>