千家信息网

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

发表于:2025-01-31 作者:千家信息网编辑
千家信息网最后更新 2025年01月31日,应用背景多个应用端假设名称叫做A和B,禁止用户从A B同时登录,A登录踢B,B登录踢A实现思路设置两个无序集合a_set, b_seta b 登录的时候执行$redis->sAdd('a_set',$
千家信息网最后更新 2025年01月31日Redis如何禁止用户多个应用端登录

应用背景

多个应用端假设名称叫做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无序集合实现禁止多端登录的方法的详细内容,更多请关注其它相关文章!

0