新聞中心
Redis知識點:一份簡潔筆記總結(jié)

Redis(Remote Dictionary Server)是一個高性能的KEY-value數(shù)據(jù)庫,可以在內(nèi)存中存儲數(shù)據(jù),并將數(shù)據(jù)寫入磁盤,同時支持多種數(shù)據(jù)結(jié)構(gòu)的存儲,如字符串、列表、集合、有序集合、哈希表等,因此被廣泛用作緩存、消息隊列、發(fā)布/訂閱系統(tǒng)等。
本文將對Redis的一些重要概念和使用方法進行簡潔總結(jié)。
1. 數(shù)據(jù)類型
Redis支持五種基本數(shù)據(jù)類型:字符串、列表、集合、有序集合和哈希表。下面是它們的基本使用方法:
字符串:
SET key value // 設(shè)置鍵值對
GET key // 獲取鍵值對
列表:
LPUSH key value1 value2 // 在左側(cè)插入多個值
RPUSH key value1 value2 // 在右側(cè)插入多個值
LPOP key // 彈出左側(cè)的值
RPOP key // 彈出右側(cè)的值
LLEN key // 獲取列表長度
集合:
SADD key member1 member2 // 添加多個元素
SREM key member1 member2 // 刪除多個元素
SMEMBERS key // 獲取所有元素
SINTER key1 key2 // 獲取兩個集合的交集
有序集合:
ZADD key score1 member1 score2 member2 // 添加元素及其分?jǐn)?shù)值
ZRANGE key start stop // 按分?jǐn)?shù)值范圍獲取元素
ZRANK key member // 獲取元素的排名
哈希表:
HSET key field1 value1 // 設(shè)置域的值
HSET key field2 value2
HGETALL key // 獲取所有域及其值
HDEL key field1 // 刪除域
2. 持久化
Redis支持兩種持久化方式:RDB和AOF。RDB是將數(shù)據(jù)保存到磁盤上的快照,而AOF則是將操作日志保存到磁盤上,以便在服務(wù)重啟時重新執(zhí)行命令。
開啟RDB持久化:
save 900 1 // 在900秒內(nèi)至少有1個鍵被修改,則保存快照
save 300 10 // 在300秒內(nèi)至少有10個鍵被修改,則保存快照
save 60 10000 // 在60秒內(nèi)至少有10000個鍵被修改,則保存快照
開啟AOF持久化:
appendonly yes // 開啟AOF
appendfsync always // 每次寫入命令時都執(zhí)行同步
3. 主從復(fù)制
Redis支持主從復(fù)制,可以將一個Redis實例的數(shù)據(jù)復(fù)制到另一個實例上,實現(xiàn)數(shù)據(jù)的備份、讀寫分離等功能。具體步驟如下:
– 在主節(jié)點上配置密碼并開啟主從復(fù)制:
requirepass password // 設(shè)置密碼
slaveof mymaster 6379 // 開啟主從復(fù)制
– 在從節(jié)點上連接主節(jié)點并進行身份驗證:
slaveof 127.0.0.1 6379 // 連接主節(jié)點
auth password // 進行身份驗證
– 在主節(jié)點上執(zhí)行寫入操作,在從節(jié)點上執(zhí)行讀取操作,即可實現(xiàn)讀寫分離。
4. Lua腳本
Redis支持Lua腳本,可以使用它實現(xiàn)復(fù)雜的業(yè)務(wù)邏輯和事務(wù)操作。具體步驟如下:
– 編寫Lua腳本,保存為文件:
-- 檢查余額是否足夠
if tonumber(redis.call('GET', KEYS[1])) >= tonumber(ARGV[1]) then
-- 扣減余額并返回結(jié)果
redis.call('DECRBY', KEYS[1], ARGV[1])
return 1
else
return 0
end
– 在Redis中加載腳本:
SCRIPT LOAD "腳本內(nèi)容"
– 在Redis中執(zhí)行腳本:
EVALSHA sha1 命令參數(shù)
5. 分布式鎖
Redis可以通過SETNX命令實現(xiàn)分布式鎖。具體步驟如下:
– 在客戶端嘗試獲取鎖:
SETNX my_lock 1 // 嘗試將鍵my_lock的值設(shè)為1
– 如果返回1,則獲取鎖成功;否則表示鎖已經(jīng)被其他客戶端獲取。
– 在客戶端釋放鎖:
DEL my_lock // 刪除鍵my_lock
本文僅介紹了Redis的一部分重要概念和使用方法,更多內(nèi)容請參考Redis官方文檔。
香港服務(wù)器選創(chuàng)新互聯(lián),2H2G首月10元開通。
創(chuàng)新互聯(lián)(www.cdcxhl.com)互聯(lián)網(wǎng)服務(wù)提供商,擁有超過10年的服務(wù)器租用、服務(wù)器托管、云服務(wù)器、虛擬主機、網(wǎng)站系統(tǒng)開發(fā)經(jīng)驗。專業(yè)提供云主機、虛擬主機、域名注冊、VPS主機、云服務(wù)器、香港云服務(wù)器、免備案服務(wù)器等。
分享標(biāo)題:Redis知識點一份簡潔筆記總結(jié)(redis知識點筆記總結(jié))
URL網(wǎng)址:http://www.dlmjj.cn/article/djeoipe.html


咨詢
建站咨詢
