libpomelo2的通知事件(tcp__on_tcp_read_cb)回调不及时, 而且跟与服务器的ping值相关

服务器,每秒进行30帧广播。
当客户端到服务器的ping值在30ms一下时,客户端收到包(tcp___on_tcp_read_cb事件回调)的时间间隔大概就在33ms
当客户端到服务器的ping值在300ms多时,客户端收到包的时间间隔大概也在300ms多(相当于一下收到了9,10个包)

标签: libpomelo2
OnlyForDream 在 2-8 07:30发布 分享到 weibo
4 回复
#1 OnlyForDream 2-8 08:45 回复

使用nodejs的客户端,在任何网络情况下,客户端收到包的时间间隔都大概是33ms左右

#2 OnlyForDream 2-9 14:12 回复

这个问题应该是TCP的Nagle算法所导致的。但是为啥对于c++的这个客户端服务器没有设置TCP_NODELAY?

#3 OnlyForDream 2-9 16:59 回复

服务器端的代码tcp没有设置NODELAY,而websocket设置了。把tcp设置NODELAY即可

#4 wangxy 2-10 10:59 回复

好吧

回到顶部