java web 如何统计当前在线游客和会员数
PHPz
PHPz 2017-04-17 10:57:13
[Java讨论组]

mysql+tomcat+SSH+jsp 如何统计当前在线用户呢?如果只统计会员怎么做,如果要统计游客怎么做?请大侠给个思路

PHPz
PHPz

学习是最好的投资!

全部回复(2)
迷茫

首先,一般需要在服务器端维持一个用户的在线状态标记用以标识用户是否在线。
其次,对于会员和游客,简单的说就是登录用户和非登录用户。登录用户很好处理,根据用户的登录和退出动作统计更新用户的在线状态。非登录用户一般采用独立IP来区分。对于一些代理或者共用公网IP的多个用户,添加机器标识用以进一步区分。
最后,能够区分用户是否在线,能够区分登录用户和非登录用户,统计就是简单问题了。

怪我咯

我也正在进行这方面的探索,我的实践是这样的,仅供参考:

  1. 对于登陆用户,使用一个长连接以建立客户端与服务器的通讯,首先的原因是这样可以完成服务器推送,同时也能获取用户状态,当长连接断开时,即用户已经下线。由此可以统计出真实的在线用户数量。当前对于长连接我使用pushlet来做,并简单修改了pushlet来完成对于长连接断开的监控。
  2. 对于非登陆用户,可能涉及的我在做的信息收集的服务,即在每个页面加载时,调用一个远端js函数,js函数获取用户的ip以及浏览器等信息,发送ajax请求,保存数据的服务器。原来的目的是为了进行数据挖掘,了解用户的习惯。但是同时也能用来满足你的需求。(这个方法对登陆和非登陆用户都能满足,你需要的是选择一个合适的区间,来认定这个时间区间内用户的访问被视为在线。)

目前我只有这样两个方法,期待其他好答案。

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号