Я разрабатываю решение для веб-службы, которое размещено на сервере JBoss 4.2.3 и подключается к очереди JMS, которая размещена на другом сервере.
Пока я создаю новое соединение с JMSОчередь каждый раз, когда вызывается веб-служба, это означает, что при каждом открытии нового сеанса создается новое соединение с очередью JMS.
Например, я использую приведенный ниже код для создания источника:
InitialContext jmsContext;
ConnectionFactory connectionFactory;
Properties properties;
Queue queue;
properties = JMSProperties.getJNDIProperties();
jmsContext = new InitialContext(properties);
connectionFactory = (ConnectionFactory) jmsContext.lookup("ConnectionFactory");
connection = connectionFactory.createConnection();
session = connection.createSession(false, Session.AUTO_ACKNOWLEDGE);
queue = (Queue) jmsContext.lookup(queueName);
producer = session.createProducer(queue);
connection.start();
Я знаю, что эта реализация не очень эффективна, и я думаю о создании пула соединений, чтобы мне не приходилось создавать новое соединение каждый раз, когда веб-служба получает новый запрос.
Как настроить JBoss, чтобы он создавал пул соединений с очередью JMS?Класс ConnectionFactory автоматически создает пул соединений для меня?Если да, то как мне настроить размер пула?
Спасибо, Фелипе