[rabbitmq-discuss] RabbitMQ Shovel Connections

Mihir Mone mihirm at omc-international.com.au
Thu Sep 22 00:25:26 BST 2011


Hi Matthew,

Well, your interpretation would be a good solution as well.

I have currently setup the shovelling of messages from one of our client
servers to our end via SSL. Everything works beautifully when you first
start the servers. However, over time (2-3 days) messages just seem to
get lost in transit. I have setup shovel to do transactional forwards so
as to ascertain that the messages are indeed getting delivered. When I
look at the client side server it does not show any piled up messages
(making me believe that the messages are indeed getting forwarded
properly). However, at our end there are no messages getting delivered
and the queues are empty. When I look at the connections list (using the
management plugin) I can see that the connection is still active. The
only solution I have found so far is to restart both the servers so that
the shovel connections get recycled.

Restarting the servers can be a hassle sometimes since we have multiple
client servers connecting to the same servers at our end. It is only
recently that I have started using the shovel plugin. Earlier we had
just written a shovelling application ourselves which used to perform
the consume-publish operation but wasn't as flexible or featureful as
the shovel plugin.

So, what I was thinking was to put may be an option in the shovel
configuration (something like "recycle_connection") so that we can force
a connection recycle every few days (ideally I would like to do it every
24-36 hrs). The whole point of restarting the servers is so that the
connections get recycled. So if there was a way in the plugin itself to
do this, the whole server won't need a restart.

Regards,
Mihir

On 17/09/2011 1:25 AM, Matthew Sackman wrote:
>  Hi Mihir,
>
>  On Thu, Sep 15, 2011 at 01:58:19PM +1000, Mihir Mone wrote:
>>  I was wondering whether there is a way in which the connections setup by the
>>  shovel plugin can be recycled after a certain amount of time. At the moment
>>  they seem to be persistent connections and the only way to really recycle
>>  them is to restart the Rabbit server (on either end) itself which is rather
>>  counterintuitive.
>  Hmm. I'm a bit confused by this. Whilst the each shovel is running, it
>  maintains the connections to the source and to the destination brokers.
>  Are you requesting that if the source queue is empty, the connection to
>  the destination be dropped? Or, to put it another way, only create the
>  connection to the destination once there are msgs to relay, and to drop
>  it after a period of inactivity?
>
>  If so, no, there is currently no way to do that. It's an interesting
>  feature request though. What's the motivation for such a feature?
>
>  Matthew
>  _______________________________________________
>  rabbitmq-discuss mailing list
>  rabbitmq-discuss at lists.rabbitmq.com
>  https://lists.rabbitmq.com/cgi-bin/mailman/listinfo/rabbitmq-discuss


-- 
Mihir Mone | Software Engineer

OMC-International
6 Paterson St,
Abbotsford,
VIC 3067 Melbourne | Australia

Phone +61 (3) 9412 6525
Fax +61 (3) 9415 9105
http://www.omc-international.com.au/

Smarter Ports | Safer Shipping.

CONFIDENTIAL COMMUNICATIONS. The information contained in this e-mail is confidential
and may be subject to legal professional privilege. It is intended solely for the
addressee. If you received this correspondence by mistake, please promptly inform us
by reply e-mail or by telephoning +61 3 9412 6500 and then delete the e-mail and destroy
any printed copy. You must not disclose, copy or rely on any part of this correspondence
if you are not the intended recipient.




More information about the rabbitmq-discuss mailing list