0

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

我目前正在使用这个:

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



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

    });
}

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

谢谢。

4

2 回答 2

2

是的,投票是正确的方式。无法将通知从服务器发送到客户端。客户必须要求他们。

2 秒可能太频繁了。如果您可以使用 10 个或更多,那可能会更好,但这一切都取决于用户数量、要执行的检查的复杂性(权重)以及“接近实时”的需求。

于 2012-10-26T10:59:34.987 回答
1

这也很好。你也可以用 websocket 来做 -
http://socketo.me/

于 2012-10-26T11:06:33.467 回答