
ASP.NET 如何精确实现网站在线人数统计
在Globle中通过全局APPLICATION保存的貌似并不准确,只是个大概的数目。timeout设置我也会能绝对精确的统计在线人数吗?...
在Globle中通过全局APPLICATION保存的 貌似并不准确,只是个大概的数目。timeout设置我也会
能绝对精确的统计在线人数吗? 展开
能绝对精确的统计在线人数吗? 展开
4个回答
展开全部
不可以精确统计。
因为ASP.NET是“无状态”的。
也就是说,客户端在从服务器端得到某个页面后,服务器已经和客户端断开连接了,服务器上也并没有保存关于客户端的相关信息。
这时,无论客户端是否已经关闭了该网页,服务器端是无从知晓的。
要想实现网站在线人数的统计,只能通过记录Session的个数来实现。也就像你说的那样,是不太准确的。
因为ASP.NET是“无状态”的。
也就是说,客户端在从服务器端得到某个页面后,服务器已经和客户端断开连接了,服务器上也并没有保存关于客户端的相关信息。
这时,无论客户端是否已经关闭了该网页,服务器端是无从知晓的。
要想实现网站在线人数的统计,只能通过记录Session的个数来实现。也就像你说的那样,是不太准确的。
展开全部
Application对象保存时间周期较长,共享性较好,所以可以作为计数器统计在线人数。
session_end
session_end
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
没办法百分之百精确,因为服务器永远无法知道用户什么时候关闭了浏览器。。服务器只能通过Session失效的时间来判断客户端退出。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
网上搜,一大把一大把的
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询