redis五種資料結構應用場景

2021-10-23 06:16:50 字數 1547 閱讀 1778

1.以電商購物車為例:以使用者id為key,商品id為field,商品數量為value

新增商品-》hset cart:1001 10088 1

增加1088商品數量-》hincrby cart:1001 10088 1

獲取1088商品數量-》hget cart:1001 10088

獲取購物車的商品總數-》hlen cart:1001

刪除1088商品-》hdel cart:1001 10088

獲取購物車所有商品-》hgetall cart:1001 

1.list可以實現的資料結構有stack:lpush+lpop(filo),佇列:lpush+rpop(fifo),阻塞佇列:lpush+brpop

lpush key value[value...]講乙個或多個value插入到key列表的表頭

rpush key value[value...]將乙個或多個值value插入到key列表的表尾

lpop key 移除並返回key列表的頭元素

rpop key 移除並返回key列表的尾元素

lrange key start stop返回列表key中指定區間內的元素

blpop key [key...] timeout 從key列表彈出乙個元素,若列表中沒有元素,阻塞等待,timeout秒如果timeout=0一直阻塞等待

brpop key [key...] timeout從key列表表尾彈出乙個元素

sadd key member [member...]往集合key中存入元素,若存在忽略,不存在則建立(sadd like: )

srem key member [member...]從集合key中刪除元素

smembers key獲取集合key中所有元素

scard key獲取集合key的元素個數

sismember key member判斷member元素是否存在於集合key中

srandmember key [count]從集合key中選出count元素,不刪除key(**的時候可以用到,隨機抽取幾位獲獎人員)

spop key 【count】從集合key中選出count元素,刪除key(抽不同等級的獎,抽到三等獎的人key刪除,抽二等獎就不會存在)

sinter key[key...]交集運算

sinterstore destination key [key...]將交集結果存入新集合destination中

sunion key [key...]並集運算

sunionstore destination key [key...]將並集結果存入新集合destination

sdiff key [key...]差集運算

點讚:sadd like:

取消點讚:srem like:

檢查使用者是否點過贊:sismember like:

獲取點讚的使用者列表:smembers like:

獲取點讚使用者數:scard like:

redis的五種資料結構及使用場景

一 redis 資料結構使用場景 原來看過 redisbook 這本書,對 redis 的基本功能都已經熟悉了,從上週開始看 redis 的原始碼。目前目標是吃透 redis 的資料結構。我們都知道,在 redis 中一共有5種資料結構,那每種資料結構的使用場景都是什麼呢?string 字串 has...

redis 五種資料型別和應用場景

string型別 string為最簡單型別,乙個key對應乙個value set mykey wangzai 設定key,第二次賦值會直接覆蓋之前的 setnx mykey wangzai 如果mykey存在,則不改變,如果不存在,則建立賦值 get mykey 獲取key的值 setex key1...

redis 五種資料型別和應用場景

字串型別是redis最基礎的資料結構,首先鍵是字串型別,而且其他幾種結構都是在字串型別基礎上構建的,所以字串型別能為其他四種資料結構的學習尊定基礎。字串型別實際上可以是字串 但最大不能超過512m。快取功能 字串最經典的使用場景,redis最為快取層,mysql作為儲存層,絕大部分請求資料都是 re...