云服务器是正常判断,此终端掉线
终端在超时15分钟左右,自动重连了
而不是直接就知道掉线,像是挂起一样,困惑许久,外网正常
public static function onWorkerStart($worker)
{
$connection_to_yun = new AsyncTcpConnection(ws:x.xxx.com:8888);
$connection_to_yun->transport = 'ssl';
$connection_to_yun->onConnect = ['Events', 'yun_onConnect'];
$connection_to_yun->onMessage = ['Events', 'yun_onMessage'];
$connection_to_yun->onClose = ['Events', 'yun_onClose'];
$connection_to_yun->onError = ['Events', 'yun_onError'];
$connection_to_yun->connect();
}
public static function yun_onClose($connection)
{
$connection->reConnect(1);
}
public static function yun_onError($connection, $code, $msg)
{
echo 'yun_onError: Error code:' . $code . ' msg:' . $msg . '\n';
}
请大佬,指点下,感谢万分
断网断电这些极端情况需要心跳来检测。
也就是定时向对端发送点数据,检测连接可用性。
谢谢大佬,也就是客户端,服务端,分别要有心跳机制,做判断。
客户端,在自己规定时间内没有收到服务端消息,调用close
服务端,目前,已经能正常判断,只需要增加客户端判断了。
解决这类极端情况。
协议的心跳吧.
已经完结。对端相互处理