我正在使用Spring JMS进行发送/接收,它工作正常 但是我不确定我的应用程序是否正常运行,如果这里有2个JMS Provider而不是1。 因为:2 JMS Provider没有集群,发送到Provider1的消息没有复制到Provider2。 因此,如果客户端发送给Provider1并等待Provider2的响应,它将失败。
那么谁能告诉我我创建的JMSContext,它是否对应于每个Provider?
JMSContext context = jmsT.getconnectionFactory().createContext(username,password);
Message textMessage = context.createTextMessage(input.getOfsMessage());
JMSConsumer consumer = null;
try {
textMessage.setJMSCorrelationID(request.getMessageId());
JMSProducer producer = context.createProducer();
producer.setTimeToLive(timeToLive);
producer.setDeliveryMode(DeliveryMode.PERSISTENT);
producer.setPriority(4);
producer.send(sendQueue,textMessage);
String filter = "JMSCorrelationID = '" + request.getMessageId() + "'";
consumer = context.createConsumer(replQueue,filter);
Message msg = consumer.receive(timeExpire);
if (msg instanceof TextMessage) {
TextMessage txtMsg = (TextMessage) msg;
ttt = txtMsg.getText();
}
} catch (Exception e) {
logger.error("Exception " + e);
} finally {
try {
if (consumer != null) {
consumer.close();
}
} catch (Exception ex) {
logger.error("consumer close " + ex);
}
try {
if (context != null) {
context.close();
}
} catch (Exception ex) {
logger.error("context close " + ex);
}
}