最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

redis集合類型_動力節(jié)點Java學(xué)院整理

 更新時間:2017年08月25日 10:31:15   投稿:mrr  
這篇文章給大家介紹了redis集合類型的常用方法,感興趣的朋友參考下吧

我們來看看Redis五大類型中的第四大類型:“集合類型”,集合類型還是蠻有意思的,先看redis手冊,如下:

上面就是redis中的set類型使用到的所有方法,還是老話,常用的方法也就那么四個(CURD)。。。

一: 常用方法

1. SAdd

  這個方法毫無疑問,就是向集合里面添加數(shù)據(jù),比如下面這樣,我往fruits集合里面添加喜愛的水果。

127.0.0.1:6379> sadd fruits apple
(integer) 1
127.0.0.1:6379> sadd fruits banana
(integer) 1
127.0.0.1:6379> smembers fruits
1) "banana"
2) "apple"
127.0.0.1:6379>

上面這個sadd你也看到了,我往集合里面成功添加了兩個元素,現(xiàn)在你可能不滿足這么簡單的添加,你或許想知道set這個集合在redis底層是使用什么來實現(xiàn)的,你可以用object encoding查看一下便知:

127.0.0.1:6379> object encoding fruits
"hashtable"
127.0.0.1:6379>

看到了吧,是hashtable這個,看下底層代碼:

有沒有看到dictAdd方法,而其中的第三個參數(shù)正好是Null。。。對應(yīng)著*val形參,然后我再帶你看看dictAdd方法的定義。 

2. SPOP,SMEMBERS

    既然元素進(jìn)來了,總不能不出來吧,這里的第一個SPOP:移除并返回集合中的一個隨機元素。

剛才隨便插了一句話,下面我們繼續(xù)SAdd,再SPop出來。

127.0.0.1:6379> sadd fruits pear
(integer) 1
127.0.0.1:6379> sadd fruits grape
(integer) 1
127.0.0.1:6379> sadd fruits chestnut
(integer) 1
127.0.0.1:6379> smembers fruits
1) "grape"
2) "pear"
3) "banana"
4) "apple"
5) "chestnut"
127.0.0.1:6379> spop fruits
"apple"
127.0.0.1:6379> spop fruits
"chestnut"
127.0.0.1:6379> smembers fruits
1) "grape"
2) "pear"
3) "banana"
127.0.0.1:6379>

這個方法確實還是蠻好的,起碼它是原子性操作,如果要我自己實現(xiàn)的話,起碼還是要10行左右代碼的。 

3. SREM

    既然說到了CURD,那怎么能少了D呢,它的功能定義就是:移除集合 key 中的一個或多個 member 元素,不存在的 member 元素會被忽略,

下面我隨便舉個例子,刪除fruits中的pear。

127.0.0.1:6379> smembers fruits
1) "grape"
2) "pear"
3) "banana"
127.0.0.1:6379> srem fruits pear
(integer) 1
127.0.0.1:6379> smembers fruits
1) "grape"
2) "banana"
127.0.0.1:6379>

相關(guān)文章

  • 比較幾種Redis集群方案

    比較幾種Redis集群方案

    Redis高可用集群是一個由多個主從節(jié)點群組成的分布式服務(wù)器群,它具有復(fù)制、高可用和分片特性。Redis集群不需要sentinel哨兵也能完成節(jié)點移除和故障轉(zhuǎn)移的功能,只要將每個節(jié)點設(shè)置成集群模式,這種集群模式?jīng)]有中心節(jié)點,可水平擴展,官方稱可以線性擴展到上萬個節(jié)點
    2021-06-06
  • Redis配置文件詳解

    Redis配置文件詳解

    這篇文章主要介紹了Redis配置文件詳解,本文詳細(xì)完整的用中文解釋了Redis配置文件中各種參數(shù)的作用和功能,需要的朋友可以參考下
    2015-04-04
  • Redis源碼設(shè)計剖析之事件處理示例詳解

    Redis源碼設(shè)計剖析之事件處理示例詳解

    這篇文章主要為大家介紹了Redis源碼設(shè)計剖析之事件處理示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2022-09-09
  • Redis分布式鎖及安全問題解決

    Redis分布式鎖及安全問題解決

    在分布式環(huán)境中,遇到搶購等訪問共享資源的場景時,需要我們有一種鎖機制去解決并發(fā)問題,本文主要介紹了Redis分布式鎖及安全問題解決,具有一定的參考價值,感興趣的可以了解一下
    2024-03-03
  • redis 存儲對象的方法對比分析

    redis 存儲對象的方法對比分析

    這篇文章主要介紹了redis 存儲對象的方法對比分析,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2021-07-07
  • Redis?緩存淘汰策略和事務(wù)實現(xiàn)樂觀鎖詳情

    Redis?緩存淘汰策略和事務(wù)實現(xiàn)樂觀鎖詳情

    這篇文章主要介紹了Redis緩存淘汰策略和事務(wù)實現(xiàn)樂觀鎖詳情,文章圍繞主題展開詳細(xì)的內(nèi)容介紹,具有一定的參考價值,需要的朋友可以參考一下
    2022-07-07
  • 你真的了解redis為什么要提供pipeline功能

    你真的了解redis為什么要提供pipeline功能

    Redis本身是一個cs模式的tcp server, client可以通過一個socket連續(xù)發(fā)起多個請求命令。這篇文章帶領(lǐng)大家學(xué)習(xí)redis為什么要提供pipeline功能,需要的朋友可以參考下
    2021-06-06
  • Redis?腳本和連接命令示例詳解

    Redis?腳本和連接命令示例詳解

    Redis腳本是一種可以實現(xiàn)復(fù)雜任務(wù)的腳本語言,可以用來快速履行復(fù)雜任務(wù),靈活處理數(shù)據(jù)管理和管理復(fù)雜的利用場景,這篇文章主要介紹了Redis?腳本和連接命令,需要的朋友可以參考下
    2023-09-09
  • redis 查看所有的key方式

    redis 查看所有的key方式

    這篇文章主要介紹了redis 查看所有的key方式,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2021-05-05
  • Redis命令處理過程源碼解析

    Redis命令處理過程源碼解析

    這篇文章主要介紹了Redis命令處理過程源碼解析,本文是基于社區(qū)版redis4.0.8,通過實例代碼給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2022-02-02

最新評論

贵阳市| 磴口县| 赫章县| 密山市| 吉安县| 巴中市| 个旧市| 宁武县| 额尔古纳市| 潢川县| 衢州市| 讷河市| 镇雄县| 班戈县| 土默特左旗| 孟津县| 延吉市| 宿州市| 左权县| 古浪县| 湘潭市| 新沂市| 景谷| 三台县| 云和县| 吉木萨尔县| 彩票| 太保市| 古蔺县| 高清| 墨竹工卡县| 潞西市| 福州市| 饶阳县| 德兴市| 东乡族自治县| 灵石县| 集安市| 砚山县| 红河县| 盐津县|