我正在使用ActiveMQ 5.11.1,它配置了基于websocket的mqtt。
如果新连接具有相同的客户端 ID,是否可以断开服务器端中具有相同客户端 ID 的旧 mqtt 连接?
当我使用 hivemq websocket 尝试这种情况时,我收到如下错误消息。
2015-06-18 20:03:06,074 | WARN | Transport Connection to: MQTTSocket_22078239 failed: java.io.IOException: Broker: localhost - Client: abc already connected from MQTTSocket_24236395 | org.apache.activemq.broker.TransportConnection.Transport | qtp20829588-40
对于 ActiveMQ 中的 WS 连接器,您需要启用 allowLinkStealing 选项
ws://0.0.0.0:61614?allowLinkStealing=true
对于基于 MQTT 的普通传输连接器,此值默认为 on,但由于 WS 传输连接器必须为多个协议连接(STOMP 和 MQTT)提供服务,因此默认值为关闭。