实时数据最佳实践和方法


Real time data best practices and methods

目前我已经制作了一个系统,其中许多屏幕只是列表,根据用户每页选择的结果,每N秒更新一次。

这只是setTimeout循环中的一个简单ajax调用。我看到我使用的这种方法的主要缺点是它的效率非常低,因为它会产生大量不必要的网络流量和数据库调用。

原因是屏幕上的数据可能随时发生变化,但用户需要知道列表中是否有新的内容,以便尽快做出反应。

我想创建一个推特风格的列表,你只会在顶部收到少量通知,这只是你没有看到的所有新项目的计数。然后,用户会点击它们,以使用包含的新项目刷新列表。

我的问题是,这不是一个真正的实时列表。

我刚刚开始学习Socket.io和NodeJS,但我认为可能需要一些时间来学习实现高效实时列表所需的内容。

你有什么想法?

花点时间学习Node.js和Socket.io。如果你想在浏览器和服务器之间寻找实时性,你真的无法击败这种组合。Socket.io非常高效,会选择浏览器支持的最佳选项(轮询、websocket等)。

Socket.io的文档中缺少一些好的示例,但您可以尝试它们的示例或HowToNode文章。

你很可能也想把Express放在那里,这是一个很棒的模块。

祝你好运。