Date:2019-11-12redis
讀前思考:數據庫
redis每次必問的問題,在大腦裏面先回想一下,可否答出一二?緩存
題1:Redis雪崩瞭解麼?安全
題2:瞭解Redis緩存穿透和擊穿麼?服務器
題3:你知道Redis緩存雪崩、穿透和擊穿 的三者區別嗎,能夠結合具體的應用場景業務來講說?如何避免緩存雪崩、穿透和擊穿呢?spa
題4:你能說說關係型數據庫跟Redis本質上的區別?後臺
題5:什麼是redis哨兵模式?能解決什麼問題?bug
題6:redis持久化有哪些方案?具體如何實現redis持久化的? redis持久化的做用是什麼? 如何選擇合適的持久化方案?程序
redis持久化有哪些方案:數據
RDB持久化方式可以在指定的時間間隔能對你的數據進行快照存儲.AOF持久化方式記錄每次對服務器寫的操做,當服務器重啓的時候會從新執行這些命令來恢復原始的數據,AOF命令以redis協議追加保存每次寫的操做到文件末尾.Redis還能對AOF文件進行後臺重寫,使得AOF文件的體積不至於過大.若是你只但願你的數據在服務器運行的時候存在,你也能夠不使用任何持久化方式.你也能夠同時開啓兩種持久化方式, 在這種狀況下, 當redis重啓的時候會優先載入AOF文件來恢復原始的數據,由於在一般狀況下AOF文件保存的數據集要比RDB文件保存的數據集要完整.最重要的事情是瞭解RDB和AOF持久化方式的不一樣,讓咱們以RDB持久化方式開始。
如何實現redis持久化:
redis持久化的做用:
如何選擇合適的持久化方案:
通常來講, 若是想達到足以媲美PostgreSQL的數據安全性, 你應該同時使用兩種持久化功能。若是你很是關心你的數據, 但仍然能夠承受數分鐘之內的數據丟失,那麼你能夠只使用RDB持久化。有不少用戶都只使用AOF持久化,但並不推薦這種方式:由於定時生成RDB快照(snapshot)很是便於進行數據庫備份, 而且 RDB 恢復數據集的速度也要比AOF恢復的速度要快,除此以外, 使用RDB還能夠避免以前提到的AOF程序的bug。
題7:你能夠說redis 主從模式嗎?主從模式能解決什麼問題?