JMS连接超时

问题描述

我的应用程序包含2个微服务,其中1个发送命令,另一个执行该命令。 服务通过JMS相互交互。 service1发送一条带有命令的消息,然后service2执行 命令,并在命令完成后发送回另一条消息。

现在,如果命令完成的时间少于1小时,则一切正常,但是如果命令执行的时间超过1小时,我将得到一个非法状态异常。

org.springframework.jms.listener.adapter.ListenerExecutionFailedException:侦听器方法'public void jms.JmsMessageListener.processruncommandMessage(messages.runcommandMessage)'引发异常;嵌套的异常是org.springframework.jms.IllegalStateException:会话已关闭;嵌套异常是javax.jms.IllegalStateException:会话已关闭

我认为这是由于认的JMS transactiontimeout限制为3600秒而发生的。但是我没有得到如何重写此值。我读到某个地方我必须重写connectionfactory,但是当前我使用的是认的jmstemplate,而jmstemplate依次使用了认的ConnectionFactory类。

我的jmstemplate.class具有以下属性

let isEmailAvailable = await User.exists({ email });

if (!isEmailAvailable) {
    // Do what you want if user do not exist
}

有人可以在这里指导什么是解决方案。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)