日记reason输出一般为:tcp_closed和takenover,为什么会产生对端关闭网络连接和takenover。
tcp_closed:是不是终端那边的网络不好、或者终端连接上了Broker,但是没有断开然后重新连接了一次Broker、或者有一些其他的原因。
takenover:这个是为什么,我用MQTTFX测试,手动断开了连接,但是会话还在,然后手动连接,为什么还是会提示这个,提示这个是因为有会话在,只要连接就会提示这个吗
takenover
是会话连接时 clean_session
设置为了 flase
, 如果不希望断开连接后,会话还保存,可以将 clean_session
设置为 true
, 如果是使用 MQTT 5 协议,同时也要将Session Expire 设置为 0
那tcp_closed具体是什么原因才会造成这个提示。
tcp_closed 是对端主动将 TCP 网络断开。对端可能是客户端,也可能是 LB。