Web开发-网站上显示实时在线人数应该怎么统计?

项目合作 项目合作 主题:1030 回复:2135

Web开发-网站上显示实时在线人数应该怎么统计?

夜无邪 发布于 2017-02-10 字数 248 浏览 1164 回复 2

说下使用场景:
网站已经有独立的用户登录系统,登录之后会在服务器中记录该用户最后登录时间。但是登出没有任何记录。请问,如何统计实时在线人数呢?

PS,好像论坛系统,比如discuz都会有这个功能,这些论坛是怎么定义实时在线用户的概念的呢?

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

支持 Markdown 语法,需要帮助?

评论(2

归属感 2017-08-13 2 楼

有一个online用户在线表,存用户id,最后登录时间,最后活动时间,这个最后活动时间指用户发帖、评论等在线操作,系统会每隔一段时间来监控这个表,比如用户的最后活动时间超过规定的时间后,系统认为该用户已下线,则清除该用户的记录或者用户点击退出时也会清除该记录。然后程序计算这个表的总数就是当前时间的用户在线数。

晚风撩人 2017-05-13 1 楼

web上很少统计实时在线。

一般是统计的10分钟内在线,30分钟内在线,1个小时内在线等时间段的在线人数,包括第三方网站统计系统也是这么计算的。

如果你要严格统计实时的话,要么走socket长连接,要么就需要客户端不断的向服务端发心跳包,确认自己是在线的。