我想实现一个实时仪表板,如www.foursquare.com的索引页
我使用Chrome的开发者工具检查了foursquare.com的索引页面,并惊讶于他们没有使用xhr来获取这些信息。每5秒钟一次。
使用ajax轮询会导致某些浏览器出现内存泄漏,使服务器更加繁忙。
有没有什么办法可以用PHP和jQuery(AJAX)有效地实现实时仪表板?
(也许我需要一个额外的服务器,比如推送服务器?):|
答案 0 :(得分:0)
将数据推送到客户端的一种方法是这样的循环:
答案 1 :(得分:0)
Foursquare的首页加载了30个项目(id=recent29
,id=recent28
,...),但一次只显示11个项目。所以你会有大约90秒的实时感觉(之后,相同的项目重新出现)。
...
$('#recent'+toShow).slideDown(1000, move(i));
$('#recent'+i).slideUp(1000, move(i));
...
对于某些双向客户端服务器通信,请查看websockets,即使它们尚未得到普遍支持,它们最终也会成为标准。
WebSocket API正在由W3C标准化,WebSocket协议正由IETF标准化。
答案 2 :(得分:0)