长轮询:每个浏览器中的通知

时间:2012-08-23 19:49:18

标签: php javascript ajax long-polling

我正在为我的网站的每个页面启动一个长轮询请求。它在数据库中查看每一秒,如果有新内容,则将其标记为已显示并输出通知。然后调用JavaScript开始一个新的ajax请求。

现在我在网站上打开了多个标签时遇到了问题,因为只有一个标签会收到新的通知。这也是跨浏览器的问题,登录的用户名相同...

解决这种万无一失的最聪明方法是什么?

比您的输入更多!

1 个答案:

答案 0 :(得分:2)

我认为最好避免浏览器拉动。您将遇到浏览器问题,您的基础架构也应该很大,以支持它。

尝试服务器端推送像Commet这样的技术,

  

Comet是一种Web应用程序模型,其中包含长期持有的HTTP请求   允许Web服务器在没有浏览器的情况下将数据推送到浏览器   明确要求它。

其他方法可能是使用WebSockets