在第一个版本中,我每隔1秒向数据库查询一次新数据。这是有效的,但这是不好的,数据库被查询了太多次。
如何像facebook新闻提要一样有效地实现页面上的实时ajax刷新内容?
发布于 2012-12-29 10:16:28
“实时”最好是使用web套接字或类似的技术来实现,其中服务器可以在新内容可用时向客户端发送数据,而不是不断地从客户端轮询。
如果需要执行ajax轮询,请使用较慢的时间间隔,并确保在服务器上缓存请求,以便在没有新数据可用时不执行任何查询。您还可以从客户端发送一个令牌(f.ex时间戳),这样服务器就可以检查令牌是否“新鲜”,或者您是否需要在返回响应之前查询新数据。
发布于 2012-12-29 10:12:20
为什么不直接使用RSS风格的feed呢?您可以每分钟左右轮询数据库一次以生成提要,也可以将其绑定在一起,以便可以从输入进程直接附加到提要?
http://www.rssboard.org/rss-specification
一旦构建了提要(并且可以选择在登录系统后面进行保护),就可以使用jFeed访问它。
http://plugins.jquery.com/project/jFeed
https://stackoverflow.com/questions/14078062
复制相似问题