Redis如何禁止用户多个应用端登录

应用背景

创新互联专注为客户提供全方位的互联网综合服务,包含不限于成都网站建设、网站制作、滕州网络推广、成都微信小程序、滕州网络营销、滕州企业策划、滕州品牌公关、搜索引擎seo、人物专访、企业宣传片、企业代运营等,从售前售中售后,我们都将竭诚为您服务,您的肯定,是我们最大的嘉奖;创新互联为所有大学生创业者提供滕州建站搭建服务,24小时服务热线:028-86922220,官方网址:www.cdcxhl.com

多个应用端假设名称叫做A和B,禁止用户从A B同时登录,A登录踢B,B登录踢A

实现思路

设置两个无序集合a_set, b_set

a b 登录的时候执行

$redis->sAdd('a_set',$user_id);//A登录
$redis->sRem('b_set',$user_id);//踢B
$redis->sAdd('b_set',$user_id);//B登录
$redis->sRem('a_set',$user_id);//踢A

api获取数据之前判断该端的id是否在线(AB两个端的api是分开的)

A判断:

if($redis->sIsmember('a_set',$user_id)){
   //true 
}else{
    //false
}

B判断

if($redis->sIsmember('b_set',$user_id)){
    //true
}else{
    //false
}

用到的方法:

sadd key_set value 设置值到set中
sismember key_set value 判断值时候存在key_set里面
srem key_set value 移除指定值
smembers key_set 获取所有的value

以上就是基于Redis无序集合实现禁止多端登录的方法的详细内容,更多请关注创新互联其它相关文章!


网页标题:Redis如何禁止用户多个应用端登录
标题来源:http://ybzwz.com/article/godiji.html