感觉都没有说道点上,多个端同时在线,对于客户端来说,没什么区别,对于服务器端来说,可就是个非常头疼的事情,比如以下的一个情况:
1、数据同步,ABC三个端都登陆了你的APP,A的数据是1月的,B的数据是二月的,C的数据是三月的,最新的数据是四月的,如何同步给ABC三个端(当然你可以选择全量同步,但是不觉的太Low了吗?),以及更新后的状态保存等
2、三个端同时修改一条数据,已谁的为准,别以为用时间戳就能解决?高并发下,可以吗?
3、三个端同时添加数据又如何?
等等
这样一看,是不是发现单个设备登录处理起来是不是简单多了。
1 回答4.1k 阅读✓ 已解决
3 回答1.9k 阅读✓ 已解决
2 回答2.3k 阅读✓ 已解决
2 回答806 阅读✓ 已解决
1 回答1.4k 阅读✓ 已解决
2 回答2.3k 阅读
1 回答704 阅读✓ 已解决
没有什么特别的好处,完全是视需求而定的。至于楼上的盗号说有一定的道理,但是不是最关键的(例如也可以根据ip所在地进行盗号判定)。
账户登录的排他检查是很消耗资源的,其核心原理和“谁在线上”没有任何差别。对于聊天软件这不是负担,但是对于其它应用来说通常这没有什么特殊的意义。
使用该特性之前应该问自己一个问题:如果真的同时有两个客户端登录了同一个账户,对业务逻辑会产生哪些影响?这个影响是否引起业务逻辑的异常?
其实多客户端登录相同账户很常见,尤其是对网站来说,比如用户喜欢在A浏览器浏览网站,而他收到了来自该网站的邮件,而邮箱中的url会在系统设置的默认浏览器上打开。这本来很平常,但是如果之后发现自己在A浏览器上被踢出登录了,真感觉肯定万马奔腾了。
聊天软件不喜欢这件事,因为这产生了影响,因为数据要向多端转发增大压力,本来好好的点对点聊天变成3方通话了,多难受。