java - ActiveMQ InactivityMonitor is not closing after elapsing maxInactivityDuration setting -


i'm implementing activemq in application. have use case in when there no messages in remote listening queue need close activemq connection , have reopen connection when there message. know setting maxinactivityduration=30000 not me achieve use case atleast not closing connection after elapsing 30 seconds timeout setting. please let me know wrong in connection , let me know how can achieve use case. thank solution.

@configuration @enablejms @importresource("classpath*:beans.xml") public class messagingconfiguration {          @value("${activemq.broker.url}")     private string broker_url = "tcp://localhost:61616?wireformat.maxinactivityduration=30000";      @value("${activemq.request.queue}")     private string request_queue = "test.request";      @value("${activemq.response.queue}")     private string response_queue = "test.response";      @value("${activemq.borker.username}")     private string broker_username = "admin";      @value("${activemq.borker.password}")     private string broker_password = "admin";       @autowired     listenerclass messagelistener;      @autowired     jmsexceptionlistener jmsexceptionlistener;      @bean     public activemqconnectionfactory connectionfactory() {         activemqconnectionfactory connectionfactory = new activemqconnectionfactory();         connectionfactory.setbrokerurl(broker_url);         connectionfactory.setusername(broker_username);         connectionfactory.setpassword(broker_password);         connectionfactory.settrustallpackages(true);         connectionfactory.setredeliverypolicy(redeliverypolicy());         return connectionfactory;     }      @bean     public redeliverypolicy redeliverypolicy() {         redeliverypolicy redeliverypolicy = new redeliverypolicy();         redeliverypolicy.setbackoffmultiplier(3); // wait 5 seconds first re-delivery, 15, 45 seconds         redeliverypolicy.setinitialredeliverydelay(5000);         redeliverypolicy.setmaximumredeliveries(3);         redeliverypolicy.setuseexponentialbackoff(true);         return redeliverypolicy;     }      @bean     public connectionfactory cachingconnectionfactory() {         cachingconnectionfactory connectionfactory = new cachingconnectionfactory();         connectionfactory.settargetconnectionfactory(connectionfactory());         connectionfactory.setexceptionlistener(jmsexceptionlistener);         connectionfactory.setsessioncachesize(100);         connectionfactory.setcacheconsumers(false);         connectionfactory.setcacheproducers(false);         return connectionfactory;     }      @bean     public jmstemplate jmstemplate() {         jmstemplate template = new jmstemplate();         template.setconnectionfactory(connectionfactory());         template.setdefaultdestinationname(request_queue);         template.setsessionacknowledgemodename("client_acknowledge");         template.setmessageconverter(converter());         return template;     }      @bean     public defaultmessagelistenercontainer jmslistenercontainer() {         defaultmessagelistenercontainer factory = new defaultmessagelistenercontainer();         factory.setconnectionfactory(connectionfactory());         factory.setconcurrency("1-1");         factory.setdestinationname(response_queue);         factory.setmessagelistener(messagelistener);         factory.setexceptionlistener(jmsexceptionlistener);         return factory;     }      @bean     messageconverter converter() {         mappingjackson2messageconverter converter = new mappingjackson2messageconverter();         converter.settargettype(messagetype.text);         converter.settypeidpropertyname("_type");         return converter;     }  } 

console logs:

aug 20, 2017 5:24:47 pm org.apache.catalina.startup.catalina start info: server startup in 61255 ms 17:24:52.216 [activemq inactivitymonitor writechecktimer] debug o.a.a.t.abstractinactivitymonitor - writechecker: 10001ms elapsed since last write check. 17:24:52.216 [activemq inactivitymonitor worker] debug o.a.a.t.abstractinactivitymonitor - running writecheck[tcp://127.0.0.1:61616] 17:24:53.145 [activemq inactivitymonitor writechecktimer] debug o.a.a.t.abstractinactivitymonitor - writechecker: 10000ms elapsed since last write check. 17:24:53.145 [activemq inactivitymonitor worker] debug o.a.a.t.abstractinactivitymonitor - running writecheck[tcp://127.0.0.1:61616] 17:24:56.134 [activemq inactivitymonitor writechecktimer] debug o.a.a.t.abstractinactivitymonitor - writechecker: 10001ms elapsed since last write check. 17:24:56.134 [activemq inactivitymonitor worker] debug o.a.a.t.abstractinactivitymonitor - running writecheck[tcp://127.0.0.1:61616] 17:24:56.336 [activemq inactivitymonitor writechecktimer] debug o.a.a.t.abstractinactivitymonitor - writechecker: 10000ms elapsed since last write check. 17:24:56.336 [activemq inactivitymonitor worker] debug o.a.a.t.abstractinactivitymonitor - running writecheck[tcp://127.0.0.1:61616] 17:25:00.252 [activemq inactivitymonitor writechecktimer] debug o.a.a.t.abstractinactivitymonitor - writechecker: 10000ms elapsed since last write check. 17:25:00.257 [activemq inactivitymonitor worker] debug o.a.a.t.abstractinactivitymonitor - running writecheck[tcp://127.0.0.1:61616] 17:25:02.217 [activemq inactivitymonitor writechecktimer] debug o.a.a.t.abstractinactivitymonitor - writechecker: 10001ms elapsed since last write check. 17:25:02.217 [activemq inactivitymonitor worker] debug o.a.a.t.abstractinactivitymonitor - running writecheck[tcp://127.0.0.1:61616] 17:25:03.145 [activemq inactivitymonitor readchecktimer] debug o.a.a.t.abstractinactivitymonitor - 30001ms elapsed since last read check. 17:25:03.146 [activemq inactivitymonitor writechecktimer] debug o.a.a.t.abstractinactivitymonitor - writechecker: 10001ms elapsed since last write check. 17:25:03.146 [activemq inactivitymonitor worker] debug o.a.a.t.abstractinactivitymonitor - running writecheck[tcp://127.0.0.1:61616] 17:25:03.262 [activemq inactivitymonitor writechecktimer] debug o.a.a.t.abstractinactivitymonitor - writechecker: 10000ms elapsed since last write check. 17:25:03.262 [activemq inactivitymonitor worker] debug o.a.a.t.abstractinactivitymonitor - running writecheck[tcp://127.0.0.1:61616] 17:25:06.133 [activemq inactivitymonitor readchecktimer] debug o.a.a.t.abstractinactivitymonitor - 30001ms elapsed since last read check. 17:25:06.135 [activemq inactivitymonitor writechecktimer] debug o.a.a.t.abstractinactivitymonitor - writechecker: 10001ms elapsed since last write check. 17:25:06.135 [activemq inactivitymonitor worker] debug o.a.a.t.abstractinactivitymonitor - running writecheck[tcp://127.0.0.1:61616] 17:25:06.337 [activemq inactivitymonitor writechecktimer] debug o.a.a.t.abstractinactivitymonitor - writechecker: 10001ms elapsed since last write check. 17:25:06.337 [activemq inactivitymonitor worker] debug o.a.a.t.abstractinactivitymonitor - running writecheck[tcp://127.0.0.1:61616] 17:25:10.253 [activemq inactivitymonitor writechecktimer] debug o.a.a.t.abstractinactivitymonitor - writechecker: 10001ms elapsed since last write check. 17:25:10.253 [activemq inactivitymonitor worker] debug o.a.a.t.abstractinactivitymonitor - running writecheck[tcp://127.0.0.1:61616] 

looks per code, have registered listener connection wont in idle state hence wont closed.

but if want forcefully close connection may need set maxtimeout connection.


Comments

Popular posts from this blog

ubuntu - PHP script to find files of certain extensions in a directory, returns populated array when run in browser, but empty array when run from terminal -

php - How can i create a user dashboard -

javascript - How to detect toggling of the fullscreen-toolbar in jQuery Mobile? -