濮阳杆衣贸易有限公司

主頁 > 知識庫 > 基于Redis無序集合如何實現(xiàn)禁止多端登錄功能

基于Redis無序集合如何實現(xiàn)禁止多端登錄功能

熱門標(biāo)簽:高碑店市地圖標(biāo)注app 廊坊外呼系統(tǒng)在哪買 400電話辦理的口碑 一個地圖標(biāo)注多少錢 南京手機外呼系統(tǒng)廠家 地圖標(biāo)注工廠入駐 b2b外呼系統(tǒng) 臺灣電銷 四川穩(wěn)定外呼系統(tǒng)軟件

前言

一個集合類型可以存儲最多2^32 -1 個字符串

集合類型在redis內(nèi)部使用值為空的散列表(hash table)實現(xiàn),所以集合中的加入或刪除元素等時間復(fù)雜度為O(1)。

集合具有元素唯一性。

本文主要給大家介紹了基于Redis無序集合實現(xiàn)禁止多端登錄的相關(guān)內(nèi)容,下面話不多說了,來一起看看詳細(xì)的介紹吧

應(yīng)用背景

多個應(yīng)用端假設(shè)名稱叫做A和B,禁止用戶從A B同時登錄,A登錄踢B,B登錄踢A

實現(xiàn)思路

  • 設(shè)置兩個無序集合a_set, b_set
  • a b 登錄的時候執(zhí)行
$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獲取數(shù)據(jù)之前判斷該端的id是否在線(AB兩個端的api是分開的)

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 設(shè)置值到set中
  • sismember key_set value 判斷值時候存在key_set里面
  • srem key_set value 移除指定值
  • smembers key_set 獲取所有的value

總結(jié)

以上就是這篇文章的全部內(nèi)容了,希望本文的內(nèi)容對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,如果有疑問大家可以留言交流,謝謝大家對腳本之家的支持。

您可能感興趣的文章:
  • 詳解Redis開啟遠程登錄連接
  • 詳解Redis使用認(rèn)證密碼登錄
  • redis-cli 使用密碼登錄的實例
  • 使用redis管理用戶登錄會話的方法

標(biāo)簽:南寧 河源 定州 泰州 伊春 畢節(jié) 甘南 拉薩

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《基于Redis無序集合如何實現(xiàn)禁止多端登錄功能》,本文關(guān)鍵詞  基于,Redis,無序,集合,如何,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《基于Redis無序集合如何實現(xiàn)禁止多端登錄功能》相關(guān)的同類信息!
  • 本頁收集關(guān)于基于Redis無序集合如何實現(xiàn)禁止多端登錄功能的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章
    岱山县| 莱州市| 平顺县| 安泽县| 孝昌县| 玛纳斯县| 深圳市| 永清县| 汝南县| 明星| 庆安县| 开阳县| 固镇县| 中超| 洛宁县| 聊城市| 梅河口市| 华坪县| 大邑县| 陵水| 嵊泗县| 郓城县| 福建省| 镇康县| 宁城县| 荣昌县| 广汉市| 星座| 武宁县| 鸡泽县| 昆山市| 湾仔区| 温宿县| 高安市| 平潭县| 汝州市| 额尔古纳市| 白河县| 普洱| 同仁县| 根河市|