做了一个聊天系统,客户反应有时会出现接收不到消息的问题。
然后我发现有大量用户不知道为什么会触发workerman的onclose方法,几乎每秒都有触发onclose方法的。
系统是web版,包括微信网页和pc网页,用户可能自己退出,但也不应该出现大量的onclose触发,而且每秒都有!
但是我自己在用时并没有出现问题,一整个下午也没有掉线(除了自己关闭外),但发现很多用户触发了onclose。
系统最初不是我开发,发现代码里是后端进行心跳检测的,onclose方法里调用Gateway::sendToAll() 发送下图的消息
求大神帮助,谢谢了!!
发送心跳间隔设置短一点
运行 php start.php status 看下
是不是没安装event扩展?没优化linux内核?