>  기사  >  데이터 베이스  >  Redis 비순차 수집 기반 다중 터미널 로그인을 금지하는 방법

Redis 비순차 수집 기반 다중 터미널 로그인을 금지하는 방법

尚
앞으로
2020-05-28 09:21:232325검색

Redis 비순차 수집 기반 다중 터미널 로그인을 금지하는 방법

애플리케이션 배경

여러 애플리케이션의 이름이 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를 실행하여 end의 id가 온라인인지 확인한 후 데이터를 획득합니다. (두 end 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 입문 튜토리얼 칼럼을 주목해주세요.

위 내용은 Redis 비순차 수집 기반 다중 터미널 로그인을 금지하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
이 기사는 juejin.im에서 복제됩니다. 침해가 있는 경우 admin@php.cn으로 문의하시기 바랍니다. 삭제