转载自:www.javaman.cn
笔者做了一个网站,需要统计在线人数。
在线有两种:
一、如果是后台系统如果登录算在线,退出的时候或者cookie、token失效的时候就算下线
二、如果是网站前台,访问的时候就算在线
今天我们来讲一下第2种情况,网站前台如何统计同时在线人数
该类主要是管理登录的session信息
当用户访问首页或者详情页的时候,拦截器获取sessionid,存入onlineUsers中
前三步做完以后,就可以实现在线人数了。
效果如下:
但是有一个问题,如果用户关闭访问的页面,同时在线人数不会下降,原因是因为前端认为关闭页面才算作退出在线人数。所以当页面关闭的时候,触发onlineUserManger的removeUser方法,就需要第5和第6步的实现
页面关闭时,会调用removeSession方法
总体功能完成,我们来看下效果
ie浏览器登录,在线人数为1
谷歌浏览器登录,在线人数为2
关闭ie浏览器,刷新谷歌浏览器当前在线人数降为1