2017-08-10 121 views
0

我在ActiveMQ和Stomp连接中遇到了一个非常不寻常的问题。我已将它集成到我的网站中,当网站或计算机上有任何活动时(即使网站打开的浏览器最小化),它也能正常工作。只要计算机进入空闲模式超过10分钟,ActiveMQ与STOMP之间的连接就会关闭,然后即使用户再次使浏览器达到最大化,也不会有任何通信和更新。STOMP在几分钟不活动后停止接收消息

版本我使用ActiveMQ的 :5.9.0 STOM:1.0.9

我使用以下配置设置 transportConnector NAME = “WSS” URI =“WSS://0.0.0.0:61614? maximumConnections = 1000 & wireFormat.maxFrameSize = 104857600 & wireFormat.maxInactivityDuration = 5亿& wireFormat.maxInactivityDurationInitalDelay = 3600 & websocket.maxIdleTime = 0 & transport.useInactivityMonitor =假”

什么WRO我在做什么?我已尝试过上述参数的所有可能组合,但结果相同,在连接丢失后的空闲时间内持续时间增量的变化很小。

我想要的是,无论用户是否使用浏览器/计算机,连接都应保持活动状态。

非常感谢您提供的帮助。

更新1: 这里是我在日志文件中 收到错误失败:org.apache.activemq.transport.InactivityIOException:通道是不活动的时间太长

+0

5.9.0是一个古老的版本,升级到5.15.0,并且可能会解决您所看到 –

+0

任何问题@TimBish感谢您的回复,我已将其升级到最新版本的activemq到5.15和STOMP到1.2,但仍然是相同的结果 – Aditya

回答

0

ActiveMQConnectionFactory呼吁物业

idleTimeout

它们的默认值为30秒。 IF连接在30秒内没有任何活动,那么它将通过Inactivity监视器关闭,但如果您想增加此限制,则应将IdleTimeout设置为15分钟。在JMS连接使用方法

factory.setIdleTimeout(15 * 60 * 1000)

+0

谢谢@nir我正在检查这一点。 – Aditya

+0

这不起作用 – Aditya

相关问题