开源进销存PSI - 单一设备登录

业务背景

账户在A电脑上登录   在b登录时A下线

1、这个需求不叫“单点登录”。真正的单点登录的含义见这里:http://baike.baidu.com/link?url=RIJVoUe0zqRvelRRdMf2mb4fNA6W1pE1M8EDDZ2dkoqDnWsDE_GpZbgJIdmx2951gycmmY-Cp4JR9WEWlSQkna

2、我自己发明了一个术语“单一设备登录”,准确与否就不去计较了,只是用来表达意思。

3、先说一个很古老的东东: ASP Application 对象,解释见这里:

      http://www.w3school.com.cn/asp/asp_ref_application.asp 

4、我查了查PHP的文档,发现没有类似 ASP Application的东东,我有些差异。

     百度后,发现这个博客: http://php.js.cn/blog/php_asp_application_session/ 

5、下面说说如果在PSI中要实现“单一设备登录”,我目前倾向于如何实现

5.1、用户登录的时候,生成一个token,token格式:用户登录名_时间戳   。例如:admin_2014040908410003

5.2、把token和数据中的记录比较,这之后的操作大家都理解,就不多说。

5.3、难点就是:如何让别处已经登录的用户自动下线

方法1:轮询查询当前用户的状态,这个方法的弱点也是明显的:会给服务器造成一定的压力,特别是大用户量的情况下,所以,只适合小用户量的情况。

方法2: WebSocket, 这个技术的详细讲解见:http://blog.csdn.net/yl02520/article/details/7296223 

一句话说WebSocket的用途:Server可以主动向浏览器推送消息。 

你可能感兴趣的:(开源进销存PSI - 单一设备登录)