国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 數據庫 > Redis > 正文

基于Redis無序集合如何實現禁止多端登錄功能

2020-03-17 12:19:25
字體:
來源:轉載
供稿:網友

前言

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

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

集合具有元素唯一性。

本文主要給大家介紹了基于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是分開的)

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

總結

以上就是這篇文章的全部內容了,希望本文的內容對大家的學習或者工作具有一定的參考學習價值,如果有疑問大家可以留言交流,謝謝大家對VEVB武林網的支持。


注:相關教程知識閱讀請移步到Redis頻道。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 卢氏县| 保康县| 西峡县| 金山区| 临江市| 西畴县| 屏南县| 溧水县| 资源县| 鄂托克前旗| 邵阳市| 留坝县| 睢宁县| 龙山县| 巴中市| 弥勒县| 安岳县| 福建省| 泌阳县| 杨浦区| 庆元县| 大庆市| 秭归县| 应用必备| 山东省| 景东| 夏河县| 株洲县| 宜阳县| 南宫市| 天等县| 天祝| 中超| 民勤县| 永春县| 尼勒克县| 泸州市| 莆田市| 永顺县| 灵山县| 文成县|