1. 程式人生 > >redis學習02---redis的基礎資料

redis學習02---redis的基礎資料

  1. Redis 的預設埠是 6379
  2. 字串是由多個位元組組成,每個位元組又是由 8 個 bit 組成,如此便可以將一個字串看成很多 bit 的組合

redis有5個基本資料結構:

      redis的所有資料結構都是以唯一的KEY值來獲取相應的value資料,不同型別的資料結構的差異在於value的結構不一樣。

      string (字串)、list (列表)、set (集合)、hash (雜湊) 和 zset (有序集合)

String

        字串的結構使用非常廣泛,常用於快取使用者資訊,我們將使用者資訊結構體使用JSON序列化成字串,然後將序列化後的字串塞進Redis來快取,同樣,取使用者資訊會經過一次反序列化的過程。  

        redis的字串是動態字串,是可以修改的字串,內部結構類似於java的ArrayList,採用預分配冗餘空間的方式來減少記憶體的頻繁分配,如圖:內部為當前的字串實際分配的空間大小( capacity)一般要高於實際字串的長度len。當字串長度<1M時,擴容都是加倍現有空間,如果>1M,擴容時一次只會多擴1M的空間,需要注意的是字串最大長度為512M

操作:

操作 命令 結果
建立字串 set  key   value 成功返回ok
獲得字串 get key 存在返回value,不存在返回(nil)
檢查key 是否存在 exists key 存在返回1,不存在返回0
刪除字串 del key 刪除成功返回1,失敗返回0
批量對多個字串進行讀寫 mget key1 key2 key3... 返回一個列表
批量新增多個字串 mset key1 value1 key2 value2 key3 value3 成功返回ok
設定過期時間(key存在,覆寫舊值) setex key 過期時間(秒)  value
設定過期時間(key存在,不作操作) setnx key value ( 將 key 的值設為 value ,當且僅當 key
 不存在)
整數型別的value,自增 自增1:incr key 自增固定值:incrby key 值  自增範圍:signed long 的最大最小值,超過了這個值,Redis 會報錯