Redis之2———string類型詳解:常用操作、業務場景

目錄

string 的常用操作

1 set key value

2 get

3 getset key value

4 mset key1 value1 [key2 value2……]

5 get key1[key2 ……]

6 incr key 

7 decr key

8 incrby key increment

9 incrbyfloat key increment

10 decrby key increment

11 append key value

12 setex key senconds value

13 setnx key value

14 strlen key

15 getrange key start end

string類型的一個業務場景


首先Redis是一個key-value型的數據庫,因此這個string指的是value的類型,注意,在redis裏面key的值都是string型的。

string 的常用操作

1 set key value

set key 的值,例如  set age 17 ,即將age的值設置爲17。

在將set age 17之後,我們再執行set age 18 這時候age的值就變爲了18,因爲再redis裏面key相當於一個主鍵,具有唯一性。

2 get

get可以通過key值獲取到相應的value,如上圖,可以通過get age 獲取到age對應的值爲18.

3 getset key value

將key設置爲value,並返回key的舊值,如下所示:

4 mset key1 value1 [key2 value2……]

mset即mutiple set,同時設置一個或者多個key-value對,如下所示:

設置了兩個key-value對:name zhangsan和sex male

5 get key1[key2 ……]

獲取多個key對應的value,如上圖所示。

6 incr key 

如果key對應的value裏存放着的是數字,那麼可以將value的值加1.

如上圖,將age的值加了1.

7 decr key

將key中對應的value值減1

8 incrby key increment

將key所對應的值加上給點給的增量值(increment)

9 incrbyfloat key increment

將key對應的值加上給定的浮點增量(increment)。

10 decrby key increment

將key對應的值減去對應的increment

11 append key value

如果key已經存在並且是一個字符串,append將value追加到原來value值的末尾,如下:

12 setex key senconds value

將value的值關聯到key,並將key的國企時間設置爲senconds秒

我們再get name之前等待10秒,可以發現name zhangsna的鍵值對已經不存在了,如果再十秒之內進行獲取,還是能獲取到的,十秒之後將會被清除。

13 setnx key value

只有key不存在時設置key 的值。

14 strlen key

返回key所存儲的字符串的長度

15 getrange key start end

返回key中字符串的子字符

string類型的一個業務場景

相信大家對微信投票都不陌生吧,一般情況下我們都是一天只能投一次,不能一直點,那麼怎麼處理這個業務呢?

解決方案是:將投票人的相關信息(微信號等)記錄到redis中,並且爲數據通過setex設置時效信息(24小時),再投票之前先去查找微信號是否出現在數據庫當中,如果出現,就不能進行投票。同時,由於信息設置了時效,因此在24小時過去之後,投票人的相關信息從redis中抹去,就可以繼續進行投票等操作了,這樣可以保證一天一個人只能投票一次。

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章