最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

詳解Redis?鍵和字符串常用命令

 更新時(shí)間:2022年02月08日 11:34:45   作者:寂靜花開  
字符串是?Redis?最基本的數(shù)據(jù)結(jié)構(gòu),它將以一個(gè)鍵?和一個(gè)值?儲(chǔ)存在?Redis?內(nèi)部,本文重點(diǎn)給大家介紹Redis鍵和字符串常用命令,感興趣的朋友一起看看吧

Redis 相關(guān)知識(shí)

Redis的默認(rèn)端口號(hào)為6379

默認(rèn)16個(gè)數(shù)據(jù)庫,類似數(shù)組下標(biāo)從0開始,初始默認(rèn)使用0號(hào)庫。
使用命令select <dbid>來切換數(shù)據(jù)庫。 如: select 8。
統(tǒng)一密碼管理,所有庫同樣密碼。

dbsize查看當(dāng)前數(shù)據(jù)庫的key的數(shù)量。
flushdb清空當(dāng)前庫。
flushall通殺全部庫。

Redis是單線程+多路IO復(fù)用技術(shù)。
多路復(fù)用是指使用一個(gè)線程來檢查多個(gè)文件描述符( Socket )的就緒狀態(tài),比如調(diào)用select和poll函數(shù),傳入多個(gè)文件描述符,如果有一個(gè)文件描述符就緒,則返回,否則阻塞直到超時(shí)。得到就緒狀態(tài)后進(jìn)行真正的操作可以在同一個(gè)線程里執(zhí)行,也可以啟動(dòng)線程執(zhí)行(比如使用線程池)。

串行 VS 多線程+鎖 ( memcached) VS 單線程+ 多路IO復(fù)用(Redis)
Redis與Memcache三點(diǎn)不同:

  • 支持多數(shù)據(jù)類型
  • 支持持久化
  • 單線程+多路IO復(fù)用

Redis中的數(shù)據(jù)類型

redis 鍵(key)

keys *:查看當(dāng)前庫所有key (匹配 : keys *1)

exists key:判斷某個(gè)key是否存在。
type key:查看你的key是什么類型。
del key:刪除指定的key數(shù)據(jù),

unlink key:根據(jù)value選擇非阻塞刪除。僅將keys從keyspace元數(shù)據(jù)中刪除,真正的刪除會(huì)在后續(xù)異步操作。。
expire key 10:10 秒鐘,為給定的key設(shè)置過期時(shí)間,
ttl key:查看還有多少秒過期, -1表示永不過期, -2表示已過期。

select命令切換數(shù)據(jù)庫,
dbsize查看當(dāng)前數(shù)據(jù)庫的key的數(shù)量。
flushdb清空當(dāng)前庫。
flushall通殺全部庫

Redis字符串(String)

String是Redis 最基本的類型,一個(gè)key對(duì)應(yīng)一個(gè)value。
String類型是二進(jìn)制安全的。 意味著Redis的string可以包含任何數(shù)據(jù)。比如jpg圖片
或者序列化的對(duì)象。
String類型是Redis最基本的數(shù)據(jù)類型, 一個(gè)Redis中字符串value最多可以是512M。

常用命令

set、get等

set <key> <value>:添加鍵值對(duì)。
當(dāng)設(shè)置過值的key再被設(shè)置一個(gè)新的值時(shí),新的值會(huì)覆蓋舊的。

*NX:當(dāng)數(shù)據(jù)庫中key不存在時(shí),可以將key-value添加數(shù)據(jù)庫。
*XX:當(dāng)數(shù)據(jù)庫中key存在時(shí),可以將key-value添加數(shù)據(jù)庫,與NX參數(shù)互斥。
*EX: key的超時(shí)秒數(shù)。
*PX: key 的超時(shí)毫秒數(shù),與EX互斥。

get <key> 查詢對(duì)應(yīng)鍵值.
append <key> <value>將給定的< value >追加到原值的末尾,
strlen <key> 獲得值的長(zhǎng)度。
setnx <key> <value>只有在key不存在時(shí)設(shè)置 key的值.

增減建的值

incr <key>

將key中儲(chǔ)存的數(shù)字值增1。
只能對(duì)數(shù)字值操作,如果為空,新增值為10

decr <key>

將key中儲(chǔ)存的數(shù)字值減1。
只能對(duì)數(shù)字值操作。如果為空,新增值為-1。

inrjy/ decrby <key><步長(zhǎng)> 將key中儲(chǔ)存的數(shù)字值增減。自定義步長(zhǎng)。

注意:
incr和decr是原子操作
而java中的i++則不是原子操作

mset、mget和msetnx

mset <key1> <value1> <key2> <value2> ....

同時(shí)設(shè)置一個(gè)或多個(gè)key-value對(duì)。

mget <key1> <key2> <key3>

同時(shí)獲取一個(gè)或多個(gè)value。

msetnx <key1> <value1> <key2> <value2>

它是原子性的
同時(shí)設(shè)置一個(gè)或多個(gè) key-value對(duì),當(dāng)且僅當(dāng)所有給定key都不存在時(shí),才成功。

有一個(gè)是之前存在的則不成功

getrange、setrange

getrange <key> <起始位置><結(jié)束位置>

獲得值的范圍,類似java中的substring ,前包,后包

setrange <key> <起始位置> <value>

用覆寫所儲(chǔ)存的字符串值,從<起始位置:開始(索引從0開始)。

設(shè)置過期時(shí)間

setex <key> <過期時(shí)間><value>

設(shè)置鍵值的同時(shí),設(shè)置過期時(shí)間,單位秒。

替換舊值

getset <key> <value>

以新?lián)Q舊,設(shè)置了新值同時(shí)獲得舊值。

String的數(shù)據(jù)結(jié)構(gòu)

String的數(shù)據(jù)結(jié)構(gòu)為簡(jiǎn)單動(dòng)態(tài)字符串(Simple Dynamic String,縮寫SDS)。是可以修改的字符串,內(nèi)部結(jié)構(gòu)實(shí)現(xiàn)上類似于Java的ArrayList ,采用預(yù)分配冗余空間的方式來減少內(nèi)存的頻繁分配。

如圖中所示,內(nèi)部為當(dāng)前字符串實(shí)際分配的空間capacity一般要高于實(shí)際字符串長(zhǎng)度len。當(dāng)字符串長(zhǎng)度小于1M時(shí),擴(kuò)容都是加倍現(xiàn)有的空間,如果超過1M,擴(kuò)容時(shí)一次只會(huì)多擴(kuò)1M的空間。需要注意的是字符串最大長(zhǎng)度為512M。

到此這篇關(guān)于Redis 鍵和字符串常用命令的文章就介紹到這了,更多相關(guān)Redis 常用命令內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • 解決redis修改requirepass后不生效的問題

    解決redis修改requirepass后不生效的問題

    今天小編就為大家分享一篇解決redis修改requirepass后不生效的問題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2018-05-05
  • Redis?如何清空所有數(shù)據(jù)

    Redis?如何清空所有數(shù)據(jù)

    這篇文章主要介紹了Redis?如何清空所有數(shù)據(jù),具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-08-08
  • 保證Redis中存儲(chǔ)的Token安全性的示例詳解

    保證Redis中存儲(chǔ)的Token安全性的示例詳解

    確保Redis中存儲(chǔ)的Token安全性是一個(gè)多層面的任務(wù),涉及到網(wǎng)絡(luò)、應(yīng)用、數(shù)據(jù)和操作等多個(gè)方面的安全措施,本文給大家介紹了一些詳細(xì)的實(shí)踐建議和示例,并有詳細(xì)的代碼供大家參考,需要的朋友可以參考下
    2024-03-03
  • Redis集群的實(shí)現(xiàn)全過程

    Redis集群的實(shí)現(xiàn)全過程

    Redis集群的實(shí)現(xiàn)方案主要有客戶端分片、代理模式和Cluster模式,其中,Cluster模式是Redis官方推薦的實(shí)現(xiàn)方案,它具有高可用性、高性能和自動(dòng)分片等優(yōu)點(diǎn)
    2024-12-12
  • 帶你輕松掌握Redis分布式鎖

    帶你輕松掌握Redis分布式鎖

    這篇文章主要介紹了帶你輕松掌握Redis分布式鎖,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2021-11-11
  • Redis查看KEY的數(shù)據(jù)類型的方法和步驟

    Redis查看KEY的數(shù)據(jù)類型的方法和步驟

    在Redis中,可以使用 TYPE 命令來查看指定key的數(shù)據(jù)類型,該命令會(huì)返回存儲(chǔ)在指定key中的值的數(shù)據(jù)類型,本文給大家介紹了具體的使用方法和步驟,感興趣的朋友可以參考下
    2024-04-04
  • redis緩存數(shù)據(jù)庫中數(shù)據(jù)的方法

    redis緩存數(shù)據(jù)庫中數(shù)據(jù)的方法

    這篇文章主要為大家詳細(xì)介紹了redis緩存數(shù)據(jù)庫中數(shù)據(jù)的方法,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2022-07-07
  • 基于redis實(shí)現(xiàn)世界杯排行榜功能項(xiàng)目實(shí)戰(zhàn)

    基于redis實(shí)現(xiàn)世界杯排行榜功能項(xiàng)目實(shí)戰(zhàn)

    前段時(shí)間,做了一個(gè)世界杯競(jìng)猜積分排行榜。對(duì)世界杯64場(chǎng)球賽勝負(fù)平進(jìn)行猜測(cè),猜對(duì)+1分,錯(cuò)誤+0分,一人一場(chǎng)只能猜一次。下面通過本文給大家分享基于redis實(shí)現(xiàn)世界杯排行榜功能項(xiàng)目實(shí)戰(zhàn),感興趣的朋友一起看看吧
    2018-10-10
  • Redis序列化反序列化不一致導(dǎo)致String類型值多了雙引號(hào)問題

    Redis序列化反序列化不一致導(dǎo)致String類型值多了雙引號(hào)問題

    這篇文章主要介紹了Redis序列化反序列化不一致導(dǎo)致String類型值多了雙引號(hào)問題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2024-08-08
  • 在redhat6.4安裝redis集群【教程】

    在redhat6.4安裝redis集群【教程】

    這篇文章主要介紹了在redhat6.4安裝redis集群【教程】,需要的朋友可以參考下
    2016-05-05

最新評(píng)論

江陵县| 阿坝| 澄江县| 中西区| 伽师县| 和林格尔县| 广丰县| 砀山县| 上高县| 金坛市| 宝山区| 珲春市| 曲沃县| 积石山| 鹤山市| 辉县市| 乐平市| 曲阜市| 沛县| 泊头市| 太保市| 万山特区| 祁阳县| 湘西| 正宁县| 怀化市| 崇礼县| 文山县| 长宁区| 镇康县| 张北县| 北流市| 乌海市| 马尔康县| 绥棱县| 濮阳县| 安西县| 平顺县| 垦利县| 安顺市| 吕梁市|