我正在使用WebSockets从我的服务器推送实时数据。更新很频繁,处理新消息的JavaScript代码也不是无关紧要的。
如果客户端是一个iPhone (例如),并且用户退出Safari,消息仍然会被接收并排队。
当用户下一次打开Safari时,所有排队的消息都会按顺序处理。这会给应用程序带来很大的延迟。
但我只需要最新的消息。因此,如果发生这种情况,有没有办法跳到最新的消息,丢弃队列的其余部分?WebSocket本身似乎不会公开任何有关排队消息的信息。
干杯,斯图
发布于 2011-05-27 18:07:54
我不认为有任何WebSocket原生方法可以实现我想要做的事情。
因此,我最终实现了自己的JS消息队列,总是处理最新的消息,并清除队列中任何较旧的消息。
发布于 2012-02-13 08:52:26
我建议使用Kafka来存储排队的消息。在持久化消息队列或活动提要的用例中,它似乎工作得非常好。
https://stackoverflow.com/questions/6127484
复制相似问题