Redis
持久化存儲包括兩種方式:AOF
和RDB
。AOF
的全稱是Append of file
,RDB
則是Redis Database
。面試
RDB
是Redis
某一時刻的快照,Redis
會單獨fork
一個線程來處理。相比較AOF
的方式,RDB
生成的文件體積會更小。由於AOF
紀錄的是操做日誌,相似於MySQL
的binlog
。正由於AOF
是操做日誌,Redis
爲了不它膨脹的厲害,會進行按期壓縮。壓縮的實質就是:將對一個Key
的多條操做日誌,壓縮成一條。線程
在刷新內存或者同步數據的時候,咱們都會採用一些策略。下面試着列舉一下:日誌
Redis
也有本身的同步策略,但萬變不離其宗。固然,RDB
的策略沒啥能夠說的,它能夠理解爲一個數據備份。由於AOF
有這樣的策略存在,在執行這些策略的過程當中,線程可能會被阻塞,合理的評估也異常重要。code
這兩個策略本質上是互補的,並無優略之分。內存