Redis讀書筆記(二)

2021-09-11 02:17:38 字數 1430 閱讀 7667

1.通用命令

keys [pattern] (遍歷所有的key,一般不在生產環境中使用 可用scan代替) dbsize (計算key的總數)

exists key (檢查key是否存在 存在返回1 不存在返回0) del key(刪除指定的key key可以設定多個)

expire key seconds (key 在seconds 秒後過期) persist key (去掉key的過期時間)

ttl key(檢視key剩餘的過期時間 返回值-1 代表key存在,且沒有過期時間 -2代表key已經不存在了)

type key(返回key的型別 一般有一下6種 1.string 2.hash 3. list 4.set 5.zset 有序集合 6.none 不存在 )

2.資料結構和內部編碼

字串(string)

使用場景: 快取 計數器 分布式鎖 等等

命令:get set del複雜度

get key: 獲取key對應的value o(1)

set key value : 設定 key-value 不管key是否存在都設定 o(1)

setnx key value: key不存在才設定 o(1)

set key value xx:key 存在才設定(更新)o(1)

del key: 刪除key-value o(1)

整型操作命令:incr decr incrby decrby

incr key:key自增1 如果key不存在,自增後 get(key)=1 o(1)

decr key:key自減1 如果key不存在,自減後 get(key)=-1 o(1)

incrby key k: key自增k 如果key不存在,自增後 get(key)=k o(1)

decrby key k: key自減k 如果key不存在,自減後 get(key)=-k o(1)

批量操作:mget mset

3.單執行緒

redis是單執行緒但為什麼這麼快?

1.純記憶體 (主要原因) 2.非阻塞io 3.避免執行緒切換和競態消耗

單執行緒注意事項: 1.一次只執行一條命令。 2.拒絕長(慢)命令。 例:keys flushall show lua script 等等3.

讀書筆記 《Redis實戰》

常見db對比表,由於未標明各個db的版本,這個 其實並不準確,特別是附加功能欄。名稱型別 資料儲存結構 查詢型別 附加功能 redis 使用記憶體的非關係型資料庫 字串 列表 集合 有序集合 雜湊表 每種資料型別都有專屬指令 批量操作 不完全的事務支援 發布與訂閱 主從複製 持久化 指令碼 memc...

redis 讀書筆記 1

remote dictionary service 套接字socket 對網路中不同主機上的應用程序之間進行雙向通訊的端點的抽象 持久化 1.作用 防止資料丟失 2.機制 rdb儲存 快照 硬碟 全量備份,二進位制序列化形式 fork產生子程序處理快照持久化 共享記憶體中的 段和資料段 子程序不會改...

讀書筆記(二)

使用數學函式的時候,大多數需要包含標頭檔案,但是也有特例,例如處理整型數的函式abs函式被包含在標頭檔案中 三角函式和反三角函式,都以弧度為引數,而不是以角度為引數。更加詳細的數學函式可以參考c mathematical functions。維基百科 strcpy strcat函式會改變傳入的字串的...