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

Redis 存取 JSON 數(shù)據(jù)示例操作

 更新時間:2024年02月01日 11:00:29   作者:老王聊技術(shù)  
JSON 是我們常用的數(shù)據(jù)類型,當(dāng)我們需要在Redis中保存json數(shù)據(jù)時是怎么存放的呢?一般是用String或者Hash,但還是不太方便,無法靈活的操作json 數(shù)據(jù),下面通過本文給大家介紹Redis存取JSON 數(shù)據(jù)示例操作,感興趣的的朋友一起看看吧

Redis 存取 JSON 數(shù)據(jù)

本文來自網(wǎng)絡(luò),本人稍加修改

關(guān)于下面rejson安裝的修正!!!

rejson安裝我的按照下面的不行

我是下載rejson后,直接make,然后在src下發(fā)現(xiàn)有一個rejson.so,我直接用的這個

另外我啟動的時候也不顯示rejson信息,但是啟動redis后可以存取json格式

1. 簡介

Redis 本身有比較豐富的數(shù)據(jù)類型,例如 String、Hash、Set、List

JSON 是我們常用的數(shù)據(jù)類型,當(dāng)我們需要在 Redis 中保存 json 數(shù)據(jù)時是怎么存放的呢?

一般是用 String 或者 Hash,但還是不太方便,無法靈活的操作 json 數(shù)據(jù)

在 Redis 4.0 中,有一個重大改進(jìn):modules 模塊系統(tǒng),可以讓我們開發(fā)新的功能,集成到 redis 中

rejson 就是一個新的模塊,為 redis 提供了 json 存儲能力

2. 示例

2.1 基礎(chǔ)操作

127.0.0.1:6379> JSON.SET object . '{"foo": "bar", "ans": 42}'

OK

127.0.0.1:6379> JSON.GET object

"{\"foo\":\"bar",\"ans\":42}"

先看下第一條命令的含義:

  • JSON.SET 是json設(shè)置命令
  • object 是 key
  • . 是json文檔的root,后面的一串是具體的 json 數(shù)據(jù)值

第二條命令是獲取 key 為 object 的json數(shù)據(jù)

2.2 json 內(nèi)部操作

  • 獲取某字段的值

127.0.0.1:6379> JSON.GET object .ans

"42"

命令中的 .ans 是目標(biāo)路徑,表示 root 下面的 ans

  • 設(shè)置某字段值

127.0.0.1:6379> json.set object .name '"bill"'

OK

127.0.0.1:6379> json.get object

"{\"foo\":\"bar\",\"ans\":42,\"hi\":\"hello\",\"name\":\"bill\"}"

這個命令是在 root 下新增了一個字段 name,值為 bill

也可以修改已有字段的值,用法相同

  • 刪除字段

127.0.0.1:6379> json.del object .name

(integer) 1

127.0.0.1:6379> json.get object

"{\"foo\":\"bar\",\"ans\":42,\"hi\":\"hello\"}"

這個命令使用 del 把 root 下的 name 字段刪除了

  • 數(shù)字操作

ans 字段是數(shù)字類型,值為 42,下面對其執(zhí)行 +3 操作

127.0.0.1:6379> json.numincrby object .ans 3

"45"

127.0.0.1:6379> json.get object

"{\"foo\":\"bar\",\"ans\":45,\"hi\":\"hello\"}"

還可以進(jìn)行乘法操作

127.0.0.1:6379> json.nummultby object .ans 2

"90"

127.0.0.1:6379> json.get object

"{\"foo\":\"bar\",\"ans\":90,\"hi\":\"hello\"}"

直接刪除整個json串

127.0.0.1:6379> json.get object

"{\"foo\":\"bar\",\"ans\":90}"

127.0.0.1:6379> json.del object

(integer) 0

127.0.0.1:6379> json.get object

(nil)

127.0.0.1:6379>

還有很多其他操作命令,具體可以查看項目文檔

3. 安裝

因為使用了模塊功能,所以需要 redis 4.0 以上版本

3.1 安裝流程

  • 安裝 redis 4.0
  • 安裝相關(guān)系統(tǒng)依賴
  • 安裝 rejson 模塊
  • redis 加載 rejson 模塊

3.2 詳細(xì)安裝過程

安裝 redis 4.0

wget https://github.com/antirez/redis/archive/4.0-rc2.tar.gz
tar xzf 4.0-rc2.tar.gz
cd redis-4.0-rc2/
make

安裝依賴

yum groupinstall "Development Tools"

(這是 centos 中的安裝方法,ubuntu 可以使用這個命令 apt-get install build-essential )

安裝cmake

# wget https://cmake.org/files/v3.8/cmake-3.8.0-rc3.tar.gz
# tar -xzvf cmake-2.8.11.2.tar.gz
# cd cmake-2.8.11.2
# ./bootstrap
# make
# make install

直接下載rejson 模塊

建議直接下載

建議直接下載

建議直接下載

直接下載

wget https://github.com/RedisJSON/RedisJSON/releases/download/v1.0.4/rejson.so

啟動 redis 時加載 rejson.so

redis-server --loadmodule /path/to/module/rejson.so

在啟動信息中會看到 rejson 的相關(guān)信息

...

<ReJSON> JSON data type for Redis

...

安裝完成,可以登錄 redis 執(zhí)行 json 命令了

4. 小結(jié)

rejson 讓我們可以在 redis 中存儲和操作 json 數(shù)據(jù),非常方便

而且通過體驗 rejson 模塊,還可以感受到 redis 模塊系統(tǒng)的強大,以后將會出現(xiàn)各種基于redis的強大功能

rejson 項目地址:

https://redislabsmodules.github.io/rejson/

到此這篇關(guān)于Redis 存取 JSON 數(shù)據(jù)的文章就介紹到這了,更多相關(guān)Redis 存取 JSON 數(shù)據(jù)內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Redis入門基礎(chǔ)常用操作命令整理

    Redis入門基礎(chǔ)常用操作命令整理

    這篇文章主要為大家介紹了Redis入門基礎(chǔ)常用操作命令的整理,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2022-05-05
  • Redis如何存儲對象與集合示例詳解

    Redis如何存儲對象與集合示例詳解

    redis是一個key-value存儲系統(tǒng)。和Memcached類似,它支持存儲的value類型相對更多,包括string(字符串)、list(鏈表)、set(集合)、 zset(sorted set --有序集合)和hash(哈希類型)本文介紹了關(guān)于Redis是如何存儲對象與集合的相關(guān)資料,需要的朋友可以參考下
    2018-05-05
  • 遠(yuǎn)程連接阿里云服務(wù)器上的redis報錯的問題解決

    遠(yuǎn)程連接阿里云服務(wù)器上的redis報錯的問題解決

    本文主要介紹了遠(yuǎn)程連接阿里云服務(wù)器上的redis報錯的問題,出現(xiàn)?Redis Client On Error: Error: connect ECONNREFUSED 47.100.XXX.XX:6379?錯誤,下面就來介紹一下解決方法,感興趣的可以了解一下
    2025-04-04
  • 利用redis實現(xiàn)聊天記錄轉(zhuǎn)存功能的全過程

    利用redis實現(xiàn)聊天記錄轉(zhuǎn)存功能的全過程

    社交類軟件聊天功能必不可少,聊天記錄存儲的方式也比較多,比如文本,數(shù)據(jù)庫,云等等,但是最好的選擇還是redis進(jìn)行存儲,這篇文章主要給大家介紹了關(guān)于如何利用redis實現(xiàn)聊天記錄轉(zhuǎn)存功能的相關(guān)資料,需要的朋友可以參考下
    2021-08-08
  • Redis模仿發(fā)送手機驗證碼功能

    Redis模仿發(fā)送手機驗證碼功能

    這篇文章主要介紹了Redis模仿手機驗證碼發(fā)送功能,通過示例代碼給大家講解通過用戶輸入手機號以及驗證碼進(jìn)行校驗,代碼簡單易懂,需要的朋友可以參考下
    2021-09-09
  • Redis數(shù)據(jù)類型之散列類型hash命令學(xué)習(xí)

    Redis數(shù)據(jù)類型之散列類型hash命令學(xué)習(xí)

    這篇文章主要為大家介紹了Redis數(shù)據(jù)類型之散列類型hash命令學(xué)習(xí),有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-07-07
  • Redis保證數(shù)據(jù)不丟失的兩種方法

    Redis保證數(shù)據(jù)不丟失的兩種方法

    Redis 實現(xiàn)數(shù)據(jù)不丟失的關(guān)鍵在于使用了多種持久化機制,以確保數(shù)據(jù)在內(nèi)存和磁盤之間的持久性,本文給大家介紹了Redis保證數(shù)據(jù)不丟失的兩種方法,持久化和集群運行,我們分別來看它們兩的具體實現(xiàn)細(xì)節(jié),感興趣的同學(xué)跟著小編一起來看看吧
    2023-11-11
  • Redis服務(wù)自動開啟、設(shè)置密碼和閃退問題及解決

    Redis服務(wù)自動開啟、設(shè)置密碼和閃退問題及解決

    本文介紹了如何在Windows上設(shè)置和配置Redis密碼、實現(xiàn)Redis服務(wù)自動開啟以及解決Redis閃退問題的方法和步驟
    2025-12-12
  • 設(shè)置Redis最大占用內(nèi)存的實現(xiàn)

    設(shè)置Redis最大占用內(nèi)存的實現(xiàn)

    本文主要介紹了設(shè)置Redis最大占用內(nèi)存的實現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2022-05-05
  • Redis實現(xiàn)庫存扣減的解決方案防止商品超賣

    Redis實現(xiàn)庫存扣減的解決方案防止商品超賣

    在日常開發(fā)中有很多地方都有類似扣減庫存的操作,比如電商系統(tǒng)中的商品庫存,抽獎系統(tǒng)中的獎品庫存等,基于redis實現(xiàn)扣減庫存的具體實現(xiàn),初始化庫存回調(diào)函數(shù)(IStockCallback)扣減庫存服務(wù)(StockService),感興趣的朋友跟隨小編一起看看吧
    2022-06-06

最新評論

北票市| 新乡县| 麻阳| 大名县| 西峡县| 克东县| 成武县| 武威市| 乌拉特后旗| 伊吾县| 闸北区| 白山市| 民丰县| 凤山市| 镶黄旗| 迭部县| 阿拉尔市| 鲁甸县| 平武县| 茶陵县| 渑池县| 祁门县| 唐海县| 清镇市| 四子王旗| 瓦房店市| 亚东县| 凌海市| 桃源县| 买车| 界首市| 嵩明县| 陕西省| 正安县| 包头市| 安远县| 龙州县| 宣化县| 武平县| 荣成市| 惠州市|