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

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

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

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

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

如果你对这篇文章有疑问,欢迎到本站 社区 发帖提问或使用手Q扫描下方二维码加群参与讨论,获取更多帮助。

扫码加入群聊

发布评论

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

评论(2

归属感 2017-08-13 2 楼

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

晚风撩人 2017-05-13 1 楼

web上很少统计实时在线。

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

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