UDP模式,服务端如何与客户端主动通讯?

zmw668

在udp模式下,$worker->uidConnections = $connection;用这种方式保存连接是不是没有意义?因为每次UdpConnection实例都不同。

就好比共享单车,是不是某部单车没有跟服务端发起联系时,服务端就无法主动向该单车发出指令?如是上这样,那是不是在客户端(单车)上要做一个心跳机制,在很短周期内,好比每秒钟向服务端发送信息,以便服务端有指令下发时能及时通讯,请问各位大神,我的理解对么?

3514 1 0
1个回答

静默

udp是无连接的,我测试的时候如果保存udp连接实例,大概十几秒后再用这个连接发送udp数据客户端是收不到的。十秒内不断给客户端发udp又可以发送到。搞不懂,估计udp就这样

  • zmw668 2019-02-18

    所以如果要跟tcp那样随时想通讯该如何处理?是客户端不断发心跳包保持连接,还是服务端不断发心跳包?实际应用中是怎么处理的?

  • 静默 2019-02-18

    10秒发一次心跳包我觉得消耗很大,不如直接tcp了

  • zmw668 2019-02-19

    @3236:TCP也要心跳机制才稳定些

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