redis 學習筆記

2021-06-14 18:19:09 字數 1039 閱讀 8488

本文寫作源於最近產品中部分功能用到了redis

redis在功能上是乙個與memecache類似的軟體,但它比memecache提供了更強大的功能。redis本質上是乙個key-value型別的記憶體資料庫。

其value可以是string,list,set,sorted set,hash。

很多地方都寫到redis的安裝,這裡不再贅述.

1、redis是什麼?

redis是乙個開源的key-value資料庫,它是乙個記憶體資料庫,且提供持久化儲存(會以一定的方式把資料備份到磁碟)。

要問key-value資料庫是什麼嗎?我只能簡單的告訴你和它對應的是我們所熟知的關係型資料庫,它的儲存形如:

key:value

a:1b:2

所有的操作都是以key為單位的。

2、為什麼用key-value儲存?

對於我們而言原因有兩個:

1、速度 ,有些併發比較高的操作,mysql無法滿足需求

2、有些資料本身就具有key-value性質

先說說速度:比如秒殺、pv計數,這些靠已有的db是跟本搞不定的。

那麼哪些資料本身就具有key-value性質呢,比如**的個人中心的最近來訪,這是乙個動態的且需排序的集合。

先說說redis中都有哪些資料結構

string(字串)

lists(列表)

sets(集合)

sortid sets(有序集合)

hashs(雜湊表)

鍵值的資料型別決定了該鍵值支援的操作。redis 支援諸如列表、集合或有序集合的交集、 並集、查集等高階原子操作;同時,如果鍵值的型別是普通數字,redis 則提供自增等原子 操作。

說說這些資料結構都能做什麼:

string就不說了,最簡單的資料結構,當值為數字時支援自增自減.這個在快速計數上是很有用的.

lists可以用來構建佇列,

sorted set可以用來構建有優先順序的佇列,也可以構造乙個無重複的有序集合,比如最近來訪.

set :如果你想維持乙個不重複的資料集,那就往set裡面仍吧,去重的工作它會幫你做.

redis學習筆記

1.redis的無序集合 sadd命令產生乙個無序集合 smembers檢視集合元素 sismember用於檢視集合是否存在,匹配項包括集合名和元素個數。匹配成功返回1,匹配失敗返回0 2.有序集合 zadd 生成乙個有序集合。zrange檢視正序的集合,zrevrange檢視反序的集合 set和g...

redis學習筆記

redis啟動伺服器和客戶端的相關命令 string型別 乙個key對應乙個value set key value 比如 set name geyule setnx 如果key存在返回0,nx表示not exist setex 指定有效期 setrange 替換 setrange key n val...

redis學習筆記

redis的操作是基於key和value來進行的,本文就對key的相關操作進行描述,以便參考。示例 1.keys rename del exists move renamenx 在shell命令列下啟動redis客戶端工具。redis cli 清空當前選擇的資料庫,以便於對後面示例的理解。redis...