**
更新時間:2020-06-23
**
配置redis:
百度網盤
鏈接:https://pan.baidu.com/s/1Kg3Z0ZuBKkBCkaZwasRtrQ
提取碼:szll
裏面包含一個查看redis工具和免安裝版的redis-windows-64位
傻瓜式安裝即可。另一個server解壓即可。
1.雙擊運行redis-server.exe
2.顯示以下畫面即啓動成功
3.學習過程運行redis-cli.exe–客戶端程序即可
命令操作學習
學習參考地址:(都是一些好文章,可以去看看)
菜鳥教程
配置文件conf說明
redis命令參考
redis使用心得
redis過期時間和刪除機制
redis:基於內存可持久化 —我理解爲一個冰箱
使用場景:快和高併發
Redis 與其他 key - value 緩存產品有以下三個特點:
Redis支持數據的持久化,可以將內存中的數據保存在磁盤中,重啓的時候可以再次加載進行使用。
Redis不僅僅支持簡單的key-value類型的數據,同時還提供list,set,zset,hash等數據結構的存儲。
Redis支持數據的備份,即master-slave模式的數據備份。
學習要點:
1.數據結構
5個數據結構
String: 字符串 --鍵值對
set keyname value
get keyname
Hash: 散列
hmset 哈希表名myhash 鍵名key 值value
hget myhash key
List: 列表--雙向列表
lpush 列表名 value
lindex 列表名 index下標
lrange 列表名 0-10 範圍
Set: 集合
不能放置重複的成員數據。
sadd key member1[member2] --添加一個或多個成員
smembers key --取出所有成員
scard key --獲取集合數量
Sorted Set: 有序集合
和Set集合相同,只是多了一個double類型的分數。
通過這個score來進行從小到大的排序
2.發佈pub訂閱sub
SUBSCRIBE redisChat --創建訂閱頻道--自動訂閱
publish redisChar msg --發佈消息
3.設置數據的有效期
expire key seconds -- 設置n秒後過期
pexpire key milliseconds -- 設置n毫秒後過期
expireat key timestamp -- 設置達到(大於)某個時間戳(秒)後過期
pexpireat key timestamp -- 設置達到(大於)某個時間戳(毫秒)後過期
ttl key --獲取key剩餘生存時間(秒)
pttl key --獲取key剩餘生存時間(毫秒)
persist key --設置key爲永久狀態
setex key seconds value --設置有效期的key
常用用法:
登錄驗證:
設置token(一般是當前時間)隨機生成作爲key 和 字符串json用戶信息作爲value
接收token後給它設置有效期(過期時間):當前時間+有效期
取值時,判斷redis是否含有這個key,爲空則已經失效。需要重新登錄。(數據操作時就需要用到token)
刪除策略:
1.採用定時刪除+懶惰刪除:定時隨機檢查某個key,過期則刪除
1.立即刪除--設置回調,到期刪除
2.惰性刪除--下次取值時,進行check,過期則刪除 --佔用空間太多
3.定時刪除--每隔一段時間檢查過期鍵,短時間佔用大量cpu
2.配置內存淘汰策略
allkeys-lru:當內存不足以容納新寫入數據時,在鍵空間中,移除最近最少使用的key。
3.數據備份和恢復
save --創建數據庫的備份
config get dir -- 獲得redis安裝目錄
4.redis安全
CONFIG get requirepass -- 查看是否設置密碼驗證
CONFIG set requirepass "runoob" -- 設置密碼
AUTH password -- 密碼驗證
未完待更新