redis開發與運維(第2章 API的理解和使用

2021-09-02 21:59:04 字數 2414 閱讀 5191

keys *(檢視所有鍵)

dbsize(鍵總數)

dbsize在計算鍵總數時不會遍歷所有鍵,而是直接獲取redis內建的鍵總數變數,時間複雜度為o(1),而keys會遍歷所有鍵,時間複雜度為o(n)

1.常用命令

2.不常用命令

strlen key(字串長度)

getset key value(設定並返回原值)

setrange key offeset value(設定指定位置的字元)

getrange key start end(獲取部分字串)

3.內部編碼

字串的內部編碼有3種:

命令:hset key field value(設定值)

hget key field(獲取值,鍵或者field不存在,返回nil)

hdel key field [field...](刪除field)

hlen key(計算field個數)

hmset key field value [field value... ](批量設定field-value)

hmget key field [field ...](批量獲取field-value)

hexists key field(判斷field是否存在)

hkeys key(獲取所有field)

hvals key(獲取所有value)

hgetall key(獲取所有的 field-value)

hstrlen key field(計算value的字串長度)

內部編碼:

ziplist(壓縮列表):當雜湊元素個數小於hash-max-ziplist-entries配置(預設512個)、同時所有值小於hash-max-ziplist-value配置(預設64位元組)時,採用ziplist作為雜湊內部實現,節省記憶體。

hashtable(雜湊表)

列表是用來儲存多個有序的字串,列表中的每個字串稱為元素,乙個列表最多儲存2^32 -1個元素。特點:1、列表是有序的 2、列表中的元素可以是重複的命令

操作型別

操作新增

rpush lpush linsert

查lrange lindex llen

刪除lpop rpop lrem ltrim

修改lset

阻塞操作

blpop brpop

ltrim key start end(按照索引範圍修剪列表,保留下標start-end的元素)

lset key index newvalue(修改指定索引下標的元素)

brpop key [key ...] timeout(阻塞式彈出)

key[key]:多個列表的鍵

timeout:阻塞時間(單位: 秒)

redis 開發與運維 1

由於手上負責的專案很依賴redis,而且redis曾經出過問題,故決定好好系統學習一下redis的知識,本文打算先介紹一下redis的基礎知識 首先我們必須明確的幾個知識點1 1 keys 這個命令可以檢視所有的鍵,這是這個 當前db所有的key 127.0 0.1 6379 keys 1 haha...

《Redis開發與運維》筆記 初識Redis

目錄 redis優點 redis特性 速度快基於鍵值對的資料結構伺服器 豐富的功能 簡單穩定 客戶端語言多 持久化主從複製 高可用和分布式 redis使用場景 redis可以做什麼 redis不可以做什麼 用好redis的建議 切勿當作黑盒使用,開發與運維同樣重要 閱讀原始碼 redis重大版本 r...

《Redis開發與運維》 列表List

list 有序,可重複 redis中列表 list 型別是用來儲存多個有序的字串,列表中的每個字串成為元素 element 乙個列表最多可以儲存2 32 1個元素。命令 新增操作 rpush key value value 從右向左插入元素 lpush key value value 從左向右插入元...