MQTT客户端每分钟轮询服务器多少次?这是一个大数据流量吗?我知道数据包的大小可能很小,但是客户端ping了多少次代理才能使自己“#34; online"在经纪人。
如果我不清楚,请评论这个问题,我会尝试更好地解释我的疑问。
我的经纪人是Mosquitto,客户是小型设备(传感器等)
答案 0 :(得分:8)
假设没有数据流(当然是依赖于应用程序),客户端将定期向代理发送PINGREQ消息。这是一个2字节的消息,代理回复PINGRESP,也是2个字节。
发送PINGREQ的速率取决于连接时设置的keepalive
参数。这告诉代理它应该期望来自客户端的至少一条消息的间隔。在没有任何其他消息的情况下,客户端发送PINGREQ。
60秒通常用作默认值(这是否适合您取决于您希望客户端/代理响应挂起连接的速度)。在没有任何其他消息流动的情况下,保持keepalive保证意味着每分钟传输4个字节。这当然只是应用级数据,线上数据的长度会更大。