redis的五種基本資料類型
- 字元串string
- 哈希hash
- 清單list
- 集合set
- 有序集合set
1. String應用場景
- 計數器
INCR article:readcount:{文章id}
GET article:readcount:{文章id}
- Web叢集session共享
spring session +redis實作session共享
- 分布式系統全局序列号
INCRBY orderId 1000
2. Hash應用場景
-
電商購物車
1)以使用者id為key
2)商品id為field
3)商品數量為value
購物車操作
1)添加商品->hset cart:1001 10088 1
2)增加數量->hincrby cart:1001 10088 1
3)商品總數->hlen cart:1001
4)删除商品->hdelcart:1001 10088
5)擷取購物車所有商品->hgetall cart:1001
Redis的資料結構以及使用場景 -
優點
1)同類資料歸類整理儲存,友善資料管理
2)相比string操作消耗記憶體更小
3)相比string儲存更節省空間
-
缺點
1)過期功能不能使用在field上,隻能用在key上
2)Redis叢集架構下不适合大規模使用
3. List應用場景
- Stack(棧)= LPUSH + LPOP ->FILO
- Queue(隊列) = LPUSH+RPOP
- Blocking MQ(阻塞隊列) = LPUSH+BRPOP
4. Set應用場景
- 微信抽獎小程式
Redis的資料結構以及使用場景 - 微信微網誌點贊、收藏、标簽
Redis的資料結構以及使用場景 - 集合操作
Redis的資料結構以及使用場景 - 集合操作實作微網誌微信關注模型
Redis的資料結構以及使用場景 - 集合操作實作電商商品篩選
Redis的資料結構以及使用場景