使用jquery和数据库检查更改

时间:2012-10-26 10:55:41

标签: javascript jquery web-applications asynchronous

我正在做一个通知系统。发布新帖子后,将立即通过屏幕上的小通知立即通知用户。

我目前正在使用这个:

setInterval(function(){
 checkForChanges();
}, 2*1000); 



function checkForChanges(){
    $.post("http://"+ document.domain + "/posts/checkForChanges/",
        function(dat){
           if(dat>0){
              ....
              /*create notification*/
           }

    });
}

我想知道这是否是正确的做法。因为,这是每2秒调用一次PHP函数并对数据库进行查询。 如果没有新的变化,它将不会做任何事情......

感谢。

2 个答案:

答案 0 :(得分:2)

是的,民意调查是正确的方式。无法从服务器向客户端发送通知。客户必须要求他们。

2秒可能太频繁了。如果你可以逃脱10或更多,它可能会更好,但一切都取决于用户的数量,执行检查的复杂性(重量)和“接近实时”的需要。

答案 1 :(得分:1)

这也没关系。你也可以用websocket做到这一点 http://socketo.me/