日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 运维知识 > 数据库 >内容正文

数据库

Redis-字符串(string)基础

發(fā)布時間:2025/3/17 数据库 13 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Redis-字符串(string)基础 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

redis是以key?value的數(shù)據(jù)結(jié)構(gòu)存儲的,每個key都是唯一的,字符串是redis里面最簡單的數(shù)據(jù)結(jié)構(gòu),它的內(nèi)部其實是一個字符數(shù)組。

redis里面的字符串是一個動態(tài)字符數(shù)組,有點類似Java里的arrayList,采用預(yù)分配冗余的方式來減少內(nèi)存的頻繁分配,內(nèi)部為當(dāng)前字符串分配的實際空間 capacity一般要高于實際字符串長度len。當(dāng)字符串長度小于1MB時,擴容都是加倍現(xiàn)有的空間。如果字符串長度超過1MB,擴容時一次只會多擴1MB 的空間,字符串最大長度為 512MB?。

下面我們嘗試常用的一些命令

>set name mangoOK>get name mango"mango">exists name(intgeter)>del name(intgeter)>get name(nil)

批處理

>mset name1 mango name2 loveOK>mget name1 name21)"mango"2)"love"

延期

> set name mangoOK> get name"mango"> expire name 5...5s后>get name(nil)?>setex?name?5?mango #5s?后過期,等價于?set+exp工?re> get name"mango"...5s后> get name(nil)?>setnx?name?mango???#如果 name不存在就執(zhí)行set(integer)?1> get name"mango"> setnx name love(integer)?0 #因為?name?已經(jīng)存在,所以?set?創(chuàng)建不成功#如果?name?不存在就執(zhí)行?set?創(chuàng)建> get name"mango"?????#值沒有改變

計數(shù)

如果value是一個整數(shù),可以執(zhí)行自增操作,自增的范圍signed long 的最大值和最小值之間,超出了這個范圍,Redis 會報錯。

>set age 18OK>incr?age(integer)19>incrby?age?2(integer)21>incrby age -2(integer)19>set?codemax?9223372036854775807OK> incr codemax(error) ERR increment or decrement would overflow

?

?

?

一名正在搶救的coder

筆名:mangolove

CSDN地址:https://blog.csdn.net/mango_love

GitHub地址:https://github.com/mangoloveYu

?

總結(jié)

以上是生活随笔為你收集整理的Redis-字符串(string)基础的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。