我要求我的网站始终显示当前在线的用户数量。例如,“35741 个用户当前在线”。这不是基于登录,而是基于我的网站上当前有多少用户。我已经尝试为此使用会话开始/会话结束,但是会话结束不可靠。因此,我得到了夸大的数字,因为我的会话开始添加了数字,但会话结束并没有删除它们,因为它没有触发。
没有额外的信息可以从中收集(报告等),只是要求显示数字。非常简单的请求正在变成一个巨大的交易。任何帮助表示赞赏。
编辑:
我应该指定我也尝试过为此使用数据库。包含会话 ID 和最后一个活动列的简单表。每次点击页面时,我都会检查会话是否在我的数据库中。如果没有,请插入。如果是这样,请更新活动时间。然后我运行一个程序来扫描数据库,寻找在过去 20 分钟内没有活动的会话。这种方法似乎杀死了我的 SQL 服务器和/或 IIS。不得不重启网站。