ASP.NET MVC5+EF6+EasyUI 后台管理系统(39)-在线人数统计探讨

系列目录html

基于web的网站在线统计一直处于不是很精准的状态!基本上没有一种方法能够确实的统计在线用户!web

Discuz!NT 在线用户功能算是作得比较好的!参考资料ajax

他的原理大体是根据用户的操做间隔来肯定用户是否在线,也能够理解为操做日志,当系统扫描的日志间隔太长将被理解为用户离线,因此要不断的更新操做表和操做表日益增加的烦恼,因此必须定时的清除操做表,当系统启动时要重置表数据!缓存

想到MVC的自带过滤器,在执行方法的前或后对其记录操做!比Discuz!NT的操做可能来得简易了,虽然思想是同样的!安全

我我的认为在普通网站中用系统自带的session和applocation对象统计在线人数是很不精准的。用户的不退出用户而关闭网站致使session的20分钟缓冲致使在线表不许确,但在系统中又有另外一种想法了,由于系统一般在于一个页面的大框架中,用户对不安全退出而关闭系统的行为能够用js来监听,并经过ajax更新用户在线人数,应该是可行的!session

我准备考虑用这种方式来作在线人数,用Applocaition存放在线人数,和在线列表。当页面关闭的时候更新在线人数和在线列表,但又考虑多个系统页面共存时候的顾虑!app

我不知道你们如今是如何统计在线人数和在线列表的!框架

但一般的方法已经很明确,想要精准的统计必须付出更多的性能消耗!性能

下一节:在线用户的精准统计实现,利用MVC过滤器+缓存实现,我考虑把用户列表存在缓存中,对缓存进行用户的增删改。利用过滤器记录和操做缓存网站

相关文章
相关标签/搜索