1.redis持久化
RDB持久化
RDB全稱Resdis Database Backup file (Redis資料備份檔案),也被叫做Redis資料快照。簡單來說就是把記憶體中的所有資料都記錄到磁碟中。當Redis例項故障重啟後,從磁碟讀取快照檔案,恢復資料。
快照檔案成為RDB檔案,預設是儲存在當前執行目錄
save
AOF持久化
AOF全稱為Append Only File(追加檔案)。Redis處理的每一個寫命令都會記錄在AOF檔案,可以看做是命令日誌檔案
修改appendonly yes
2叢集
master主
salve/REPLICAOF從
3、Redis哨兵
Sentinel:哨兵
哨兵模式的作用
-
監控(Monitoring): 哨兵(sentinel) 會不斷地發訊息檢查你的Master和Slave是否運作正常。
-
提醒(Notification):當被監控的某個Redis節點出現問題時, 哨兵(sentinel) 可以透過 API 向管理員或者其他應用程式傳送通知。
-
自動故障遷移(Automatic failover):當一個Master不能正常工作時,哨兵(sentinel) 會開始一次自動故障遷移操作,它會將失效Master的其中一個Slave升級為新的Master, 並讓失效Master的其他Slave改為複製新的Master;當客戶端試圖連線失效的Master時,叢集也會向客戶端返回新Master的地址,使得叢集可以使用現在的Master替換失效Master。Master和Slave伺服器切換後,Master的redis.conf、Slave的redis.conf和sentinel.conf的配置檔案的內容都會發生相應的改變,即,Master主伺服器的redis.conf配置檔案中會多一行slaveof的配置,sentinel.conf的監控目標會隨之調換。
4、分片叢集
分片
雜湊插槽
slots:插槽
叢集伸縮
新增節點或者刪除節點
reids命令 | 解釋 |
---|---|
save | 由Redis主程序來執行RDB,會阻塞所有命令 |
bgsave | 開啟子程序執行RDB,避免主程序收到影響 |
redis-cli -p 7002 | 進入埠為7002的redis |
127.0.0.1:7002> SLAVEOF 192.168.88.133 7001 | 在7002上設定主節點為7001 |
127.0.0.1:7003> REPLICAOF 192.168.88.133 7001 | 在7003上設定主節點為7001 |
INFO replication | 顯示主從資訊 |
redis-cli --cluster | |
redis-cli --cluster create --cluster-replicas 1 192.168.150.101:7001 192.168.150.101:7002 192.168.150.101:7003 192.168.150.101:8001 192.168.150.101:8002 192.168.150.101:8003 | 建立叢集,主從比例為1:1 |
redis-cli -p 7001 cluster nodes | 檢視叢集的節點狀態 |
redis-cli -c -p 7001 | 叢集模式下啟動 |
redis-cli --cluster create --cluster-replicas 1 192.168.88.133:7001 192.168.88.133:7002 192.168.88.133:7003 192.168.88.133:8001 192.168.88.133:8002 192.168.88.133:8003