如何通过长轮询方法找出有多少在线用户?

时间:2012-12-10 00:15:09

标签: php jquery ajax long-polling

我需要最好的方法来了解有多少人在线使用长轮询方式。

为什么我需要长轮询方法来获取它?

我需要知道我的网站中有多少人在线。当然我可以通过一些查询来做到这一点并在我的网站中通过每个页面加载更新它但我认为没有办法在聊天室中使用这种方法吗?

`lastvisit` >= DATE_SUB(now(), INTERVAL 5 MINUTE)

对此的任何解决方案?如果我可以在没有服务器轮询的情况下获得该解决方案,那么如果您指导我正确的方向我会很感激

1 个答案:

答案 0 :(得分:0)

如果您正在使用长轮询,那么用户数将是轮询处理程序的活动连接数 - 即连接总数减去其他URL的连接数 - 这从mod_status的输出中提取是微不足道的,但是你没有告诉我们你正在使用什么服务器。

但是,如果是我,我只需使用数据库绑定会话处理程序并从那里计算当前会话(但同样可以使用文件或内存绑定会话处理程序来执行此操作)。

由于数字的变化可能相对于进入的请求数量较小,因此可以根据预定作业或通过将随机数与阈值进行比较而不是在每个请求中收集来收集。