String數據結構的應用場景解析
字符串常用操作:
SET key value //存入字符串鍵值對
MSET key value [key value ............] //批量存儲字符串鍵值對
SETNX key value //存入一個不存在的字符串鍵值對
GET key // 獲取一個字符串的鍵值
MGET key [key........] //批量獲取字符串鍵值
DEL key [key..............] //刪除一個鍵值
EXPIRE key seconds //設置一個鍵值的過期時間
原子加減操作
INCR key //將key中存儲的數字值加1
DECR key //將key中存儲的數字值減1
INCRBY key increment //將key中存儲的數字值加increment
DECRBY key increment //將key中存儲的數字值加increment
應用場景
1、單值緩存
SET key value
GET key
2、對象緩存
1) SET user:1 value(json數據格式)
2) MSET user:1:name liuhong user:1:age 122
MGET user:1:name user:1:age
3、分佈式緩存
SETNX product:10001 true 返回1代表獲取鎖成功
SETNX product:10001 false 返回0代表獲取鎖失敗
。。。。獲取鎖成功 執行業務代碼
DEL product:10001 //執行完業務釋放鎖
SET product:10001 true EXPIRE product:10001 10 //設置鎖的過期時間,防止死鎖
4、微信文章閱讀量計數器。
INCR article:readcount:{文章id}
GET article:readcount:{文章id}
5、Web集羣session共享
Spring session +redis實現session共享