Rumah > pangkalan data > Redis > 基于Redis无序集合实现禁止多端登录的方法

基于Redis无序集合实现禁止多端登录的方法

Lepaskan: 2020-05-28 09:21:23
ke hadapan
2398 orang telah melayarinya

基于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
Salin selepas log masuk
$redis->sAdd('b_set',$user_id);//B登录
$redis->sRem('a_set',$user_id);//踢A
Salin selepas log masuk

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

A判断:

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

B判断

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

用到的方法:

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

更多redis知识请关注redis入门教程栏目。

Atas ialah kandungan terperinci 基于Redis无序集合实现禁止多端登录的方法. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Label berkaitan:
sumber:juejin.im
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Isu terkini
masalah sambungan php redis
daripada 1970-01-01 08:00:00
0
0
0
Mengenai ralat kecil dalam manual redis
daripada 1970-01-01 08:00:00
0
0
0
Adakah mungkin untuk menyepadukan fungsi REDIS?
daripada 1970-01-01 08:00:00
0
0
0
python2.7 - django tidak boleh menyambung ke redis
daripada 1970-01-01 08:00:00
0
0
0
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan