Monitoring activemq connection

View: New views
2 Messages — Rating Filter:   Alert me  

Monitoring activemq connection

by Tim Sparg :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

hi all

We have an application that receives a lot more messages than it sends. It sends an appropriate response to every message that it receives, but never initiates a 'conversation' (for lack of a better term)

Our problem is that we have very poor lines between the applications that are running ActiveMQ, so the connection may go down completely, drop packets etc etc...

What then happens is that the application initiating the conversation will send a message to the appropriate queue, and the receiving app never picks it up.

I was looking at the TransportListener class, which looks quite promising with the onException,transportInterrupted() and transportResumed() methods, but when i pull out my network cable no error is thrown or methods entered.
My presumption is that these will only be entered/thrown if the application is sending a message.

I also tried getting the TransportChannel and then using the isConnected() method on there, but when i pull my network cable out the method still returns true.

I'm currently thinking of making the application attempt a reconnection after a specified time of inactivity,
thus if the connection is down/not functioning then an exception can be thrown and the problem managed from there.
However this seems like a fairly shoddy solution, and i'm hoping that somebody is aware of a better way of checking that the connection is alive.

thanks
Tim

Parent Message unknown Re: Monitoring activemq connection

by Gary Tully :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

you may want to configure an inactivityTimeout to ensure that a broker
network is promptly recognised: see:
http://activemq.apache.org/configuring-wire-formats.html

2009/6/30 Tim Sparg <timothy.sparg@...>

>
> hi all
>
> We have an application that receives a lot more messages than it sends. It
> sends an appropriate response to every message that it receives, but never
> initiates a 'conversation' (for lack of a better term)
>
> Our problem is that we have very poor lines between the applications that
> are running ActiveMQ, so the connection may go down completely, drop
> packets
> etc etc...
>
> What then happens is that the application initiating the conversation will
> send a message to the appropriate queue, and the receiving app never picks
> it up.
>
> I was looking at the TransportListener class, which looks quite promising
> with the onException,transportInterrupted() and transportResumed() methods,
> but when i pull out my network cable no error is thrown or methods entered.
> My presumption is that these will only be entered/thrown if the application
> is sending a message.
>
> I also tried getting the TransportChannel and then using the isConnected()
> method on there, but when i pull my network cable out the method still
> returns true.
>
> I'm currently thinking of making the application attempt a reconnection
> after a specified time of inactivity,
> thus if the connection is down/not functioning then an exception can be
> thrown and the problem managed from there.
> However this seems like a fairly shoddy solution, and i'm hoping that
> somebody is aware of a better way of checking that the connection is alive.
>
> thanks
> Tim
>
> --
> View this message in context:
> http://www.nabble.com/Monitoring-activemq-connection-tp24270136p24270136.html
> Sent from the ActiveMQ - User mailing list archive at Nabble.com.
>
>


--
http://blog.garytully.com

Open Source Integration
http://fusesource.com