具有多代理JMS提供程序的Spring Boot JmsTemplate

我正在使用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);
        }
    }
shanlinghai 回答:具有多代理JMS提供程序的Spring Boot JmsTemplate

暂时没有好的解决方案,如果你有好的解决方案,请发邮件至:iooj@foxmail.com
本文链接:https://www.f2er.com/2952136.html

大家都在问