我正在设计一个独立的应用程序(无应用程序服务器),它将每隔5分钟调用两个定时器并发送(根据文件是否存在于导演中)并接收来自队列的消息。此应用程序计划连续运行很长时间(几年)....独立客户端中的JMS连接
现在我有一个困境是否只创建一次JMS连接并一直使用它..或连接每个连接5分钟,并关闭它们...(做业务逻辑后)
任何关于设计的建议将会有帮助吗?如果我去单一连接(并使用JMS MessageListenr),如果队列管理器关闭并在一两天后才会发生什么.......
我尝试了一个ActiveMQ示例...并且只要我杀了积极的MQ代理和制作人......听者线程(创建conn将只有一次,使用的MessageListener)申请数分钟
//监听代码如下
connectionFactory = new ActiveMQConnectionFactory(
ActiveMQConnection.DEFAULT_USER,
ActiveMQConnection.DEFAULT_PASSWORD,
ActiveMQConnection.DEFAULT_BROKER_URL);
connection = connectionFactory.createConnection();
connection.start();
session = connection.createSession(transacted, Session.AUTO_ACKNOWLEDGE);
destination = session.createQueue("mmy first active mq queue");
MessageConsumer consumer = session.createConsumer(destination);
MyListener mylistener = new MyListener();
consumer.setMessageListener(mylistener);
connection.setExceptionListener(mylistener);