我在端口61616上使用默认的openwire TCP传输公开了一个ActiveMQ JMS代理。
我有许多远程客户端可以绑定到这个代理来监听他们的消息。
如果我想打开keepAlive设置,我需要在哪里配置它?在代理(服务器端)或每个客户端?或两者?
或者将代理配置为具有tcp://0.0.0.0:61616?keepAlive = true,意味着连接到tcp://<>:61616的任何客户端都将自动继承keepAlive = true ???
答案 0 :(得分:2)
必须在连接的客户端和代理端打开TCP KeepAlive选项。 KeepAlive虽然通常很无用,因为它的默认检查间隔大约是2小时。
activemq使用的openwire protocol具有自己的心跳功能,默认情况下已启用,配置选项列在附带的链接上。除非另行配置或禁用,否则客户和经纪人将每隔30秒交换一次心跳。