我正在使用codeigniter框架工作,目前正致力于社交网络。我的问题是,当用户点击Feed链接时,我需要通过重新加载页面来通知用户他们的朋友活动。 我试过以下脚本,
<script>
setInterval(function() {
$('#reload').fadeOut("slow").load('user_feeds').fadeIn("slow");
}, 10000);
</script>
它会增加我服务器的负载。任何其他想法来实现这一目标。
提前致谢。
答案 0 :(得分:0)
然后尝试减少时间间隔
<script>
setInterval(function() {
$('#reload').fadeOut("slow").load('user_feeds').fadeIn("slow");
}, 1000);
</script>
答案 1 :(得分:0)
Manoj你在这里想要实现的是通知和驻留在服务器上的数据源,所以你无法通过从服务器拉或推来从浏览器中做到这一点。
拉可以通过持续轮询/频繁轮询来实现 - 通常是通过设置超时并获取通知。
push - 理想情况下并不是真的推动你可以通过组合AJAX + Comet实现这一点,这也可以通过长轮询来实现,你可以保持与服务器的持续连接以获得任何新的更新,并在存在时向服务器返回数据更新
请告诉我这是否有帮助,或者您需要更多信息
答案 2 :(得分:0)
这实际上是一个非常有趣的问题,你需要的是COMET的实现。有一个使用叫做COMETD的彗星的事件路由总线。 COMETD还具有javascript实现并且具有Jquery的绑定。 http://cometd.org/documentation/2.x/cometd-javascript