workerman/mqtt 我碰到的发布报错

xinj2000

问题描述

你好,使用mqtt客户端连接回调函数里增加一个多次循环发布返回错误信息
而且循环几千次也一秒完成,是我理解的不对吗?少于一千次不报错

程序代码

$mqtt->onConnect = function ($mqtt) use ($sn,$farm_id) {
foreach(){
 $mqtt->publish()
}
$mqtt->disconnect();
$mqtt->close();
}

报错信息

Mqtt client: Connection buffer full and close connection
802 1 1
1个回答

walkor 打赏

workerman/mqtt作为客户端发布消息是异步的,消息会先存在本地缓冲区然后再发给mqtt服务端,如果瞬间发送过多消息缓冲区会满,然后会出现这个报错。

年代过于久远,无法发表回答
×
🔝