请问各位大佬如何能打印出数据真实发出那一刻的时间戳

happyday
 在gateway上,我定时调用 Gateway:sendToClient() 发送一个带有服务器时间前缀的随机字符串给某个客户端,通过客户端接收到的打印来看,存在某个时间段客户端没有任何打印数据,,过后又能一次性打印出前面几分钟服务器发来的数据。请问这是服务器下发有延时和粘包吗?如果有可能,服务端从哪里打印更直观看到发出去的那一刻时间呢?

服务器向客户端发送数据的格式为:Y.m.d_H:i:s_xxxxxxxxx

下面是我服务端在调用 Gateway:sendToClient() 时记录的log:
a、
截图
b、
截图
c、
截图

客户端的打印:
截图

客户端在05:08分钟、05:12分钟没有打印,而在16分钟的时候的打印是 08、12、16分钟服务器发来的数据的拼接字符串

1780 2 0
2个回答

dignfei

发送完之后,可以写代码看时间

  • happyday 2020-08-10

    我在调用sendToClient时加了时间打印,不过框架内部更底层的我就不清除在哪加了

six

你可以抓包,看下什么时候发出去的。

有可能客户端代码哪里阻塞了或者其它原因没有及时从socket缓冲区读消息,导致多个消息积压在缓冲区,然后客户端又一次性全部读出来了。

  • 暂无评论
年代过于久远,无法发表回答
×
🔝