为了账号安全,请及时绑定邮箱和手机立即绑定

java程序异常退出,登录状态信息应该怎么处理?

java程序异常退出,登录状态信息应该怎么处理?

慕田峪9158850 2018-07-24 16:27:09
写登录时,把已经登录的用户加到一个队列里,用来判断是否重复登录,如果程序出现异常退出,来不及从队列删除,这个问题应该怎么解决?
查看完整描述

1 回答

?
慕哥6287543

TA贡献1831条经验 获得超10个赞

最好的办法应该是允许一个用户再次登录,只是登录以后把前面登录的那个踢掉。
否则万一一个客户端登录了,然后死机了,断线了,或者他忘记退出,从办公室回了家,但是还在你的列表里,那么这个用户岂不是干瞪眼没辙了。因为他再也登录不了了。



当然,非要按照你那么设计也可以,后果自负。

怎么设计呢,就是用户每隔n秒或者n分钟定时keep alive,发数据给服务器,服务器维持的队列中包括用户和最后在线时间两个字段。如果一个客户端n分钟没有报告,不管什么原因(断线、退出、死机),都把它剔除。我们假设客户端如果一直正常工作就会不断来刷新。


查看完整回答
反对 回复 2018-07-26
  • 1 回答
  • 0 关注
  • 872 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信