String数据类型的应用场景
1. 簡介
string 類型是 Redis 中最基本的數(shù)據(jù)類型,最常用的數(shù)據(jù)類型,甚至被很多玩家當成 redis 唯一的數(shù)據(jù)類型去使用。string 類型在 redis 中是二進制安全(binary safe)的,這意味著 string 值關心二進制的字符串,不關心具體格式,你可以用它存儲 json 格式或 JPEG 圖片格式的字符串。
2. 數(shù)據(jù)模型
string 類型是基本的 Key-Value 結(jié)構(gòu),Key 是某個數(shù)據(jù)在 Redis 中的唯一標識,Value 是具體的數(shù)據(jù)。
| ‘name’ | ‘redis’ |
| ‘type’ | ‘string’ |
3. 應用場景
(1) 存儲 MySQL 中某個字段的值
把 key 設計為 表名:主鍵名:主鍵值:字段名 eg.
set user:id:1:email 10000@qq.com(2) 存儲對象
string 類型支持任何格式的字符串,應用最多的就是存儲 json 或其他對象格式化的字符串。(這種場景下推薦使用 hash 數(shù)據(jù)類型)
set user:id:1 '[{"id":1,"name":"zj","email":"10000@qq.com"},{"id":1,"name":"zj","email":"10000@qq.com"}]'(3) 生成自增 id
當 redis 的 string 類型的值為整數(shù)形式時,redis 可以把它當做是整數(shù)一樣進行自增(incr)自減(decr)操作。由于 redis 所有的操作都是原子性的,所以不必擔心多客戶端連接時可能出現(xiàn)的事務問題。
incr 對值進行加1操作,如果不是整數(shù),返回錯誤,如果不存在按照從0開始decr 同incr,但是是減1操作incrby,decrby ,增加減去指定的數(shù)
應用場景:比如視頻播放次數(shù),點贊次數(shù)。
(4)共享session
數(shù)據(jù)共享的功能,redis作為單獨的應用軟件用來存儲一些共享數(shù)據(jù)供多個實例訪問。
單點登錄的一個具體實現(xiàn)
(5)自動定時過期刪除
set key value [ex seconds] [px millseconds] [nx|xx]ex seconds: 鍵過期時間
px milliseconds: 為鍵設置毫秒級過期時間
nx: 鍵必須不存在才可以設置成功,用于添加
xx: 鍵必須存在,才可以設置成功,用于更新
(6)批量操作
mset,mget
批量設置和獲取命令,在操作多個key的時候可以節(jié)省網(wǎng)絡傳輸時間
mset key value [key value...] mget key [key ...]?
超強干貨來襲 云風專訪:近40年碼齡,通宵達旦的技術人生總結(jié)
以上是生活随笔為你收集整理的String数据类型的应用场景的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 设计 Redis Key
- 下一篇: hash 数据类型的应用场景