Java客户端当使用相同clientId连接mqtt时,大概每100ms就触发connectionLost事件,客户端或服务器可以控制这个频率么

错误报告

环境

  • EMQX 版本:4.4.10
  • 操作系统版本:centos7.0

重现此问题的步骤

  1. xxx
  2. xxx
  3. xxx

预期行为

实际行为


功能请求

描述你需要的功能

为什么你需要这个功能


其他

你是不是在多个连接上使用了相同的 Client ID?每个连接的 Client ID 必须唯一。

我知道,我是说大概每100ms就触发connectionLost事件,客户端或服务器可以控制这个触发频率么,比如每5秒触发一次

我没理解,connectionLost 事件只是一个间接的结果,根本原因是客户端或者 Broker 有一方断开了连接,你需要先找出断开连接的原因。

我知道这个事件为什么触发,我的意思是如果真的出现clientId相同,怎么控制这个事件的频率,不然每100ms就触发这个事件,对性能影响太大,如果设备很多不能保证不出现clientId相同

这个没有办法控制,本身连接断开事件出现的次数和频率是不变的,你调整 connectLost 事件的触发频率,只会导致事件触发滞后,或者丢失事件。