Ruby中是否存在监听器这样的事情?我知道他们有JSP的会话监听器,所以我想知道是否有类似的东西。最后,我想创建一个监听器来监听会话创建或销毁的时间,这样我就可以显示当前有多少用户在线的计数。
答案 0 :(得分:4)
您不知道网络服务器上有多少用户在线,除非他们有永久的有效连接(例如长轮询,彗星等)。
最好的办法是查看您的会话商店并计算过去X分钟内活跃的用户。
当用户断开连接时,侦听器将无法可靠地触发。例如,使用“登录”和“注销”逻辑,您将无法获得所有注销操作,因为互联网连接可能会失败,用户可能会忘记按下注销按钮,等等。
更新:对于Rails,请查看此论坛帖子:http://railsforum.com/viewtopic.php?id=18480,它会更详细地解释解决方案。