有一个问题困惑很久,请大家帮忙看看
发布于 9 年前 作者 nodejser 4186 次浏览 最后一次编辑是 8 年前 来自 问答

我有一个运行在树莓派上操作系统是raspberrypi的TCP客户端通讯程序。 其中该树莓派是通过3G模块拨号上线和服务器端进行通讯的。

树莓派上的客户端程序我的逻辑是当触发socket.close事件时(当前已经与服务器断开连接),客户端就重新连接服务器。

这个逻辑在其它情况下都工作的很好,发现断开连接好,很短的时间就可以重新连接到服务器。 但是,因为这个3G模块会由于各种各样的原因,如信号不好或其它原因,会重新拨号(和运营商的网络),在这种情况下,从客户端断开到重新连接到我的服务器程序一般要花费十几分钟的时间, 我百思不得其解,请大家帮忙看看,有什么好的建议,多谢。

4 回复

试一下定时发送 heartbeat 能不能解决,比如说每十秒ping一下这样。

@klesh 感谢回复,心跳机制肯定是有的。

写日志测试吧

问题已经解决。多谢回复。

回到顶部