关于GatewayWorker心跳包pingNotResponseLimit设置为0还是会被断开的问题

Kevin_

pingInterval设置为5
pingNotResponseLimit设置为0
pingData设置为'{"type":"ping"}'
项目运行时,每隔5秒左右服务端就会向客户端发送心跳包,但还是每隔近30秒连接就会断开

代码如图

2014 2 0
2个回答

phpcreeper

1、TCP连接断开了,那得先确认下到底是哪一端断开了? 抓包可看得一清二楚。
2、这种配置并不能代表TCP连接就一定不断开,只表明了这样一个含义:
你客户端给发不发心跳包,我服务端并不在乎,而且服务端也不会主动去关闭TCP连接;与此同时服务端会每隔5秒给客户端发送心跳数据{"type":"ping"}
3、小心手册注意事项: 路由节点防火墙会关闭长时间不通讯的socket连接,导致socket长连接断开。所以需要客户端与服务端定时发送心跳数据保持连接不被断开。

Tinywan

建议客户端添加心跳

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