2011-05-25 110 views
1

我使用WebSockets从我的服务器中推送实时数据。更新频繁,用于处理新消息的JavaScript代码不是微不足道的。在iOS中处理排队的WebSocket消息

如果客户端是iPhone(例如)并且用户退出Safari,则消息仍然被接收并排队。

当用户下次打开Safari时,所有排队的消息都按顺序处理。这为应用程序带来了显着的延迟。

但我只需要最近的消息。因此,如果发生这种情况,有什么办法可以跳过最近丢弃队列其余部分的消息? WebSocket本身似乎没有公开关于排队消息的任何信息。

干杯, 斯图

回答

1

我不认为有任何的WebSocket母语的方式来实现我想要做的事。

所以我最终实现了我自己的JS消息队列,总是处理最新的消息并清除队列中较旧的任何消息。

0

我建议看看Kafka存储排队的消息。它似乎与持久化消息队列或活动馈送的用例非常吻合。

相关问题