redis 配置文件 append only file(aof)部分---數據持久化


############################## 僅追加方式 ###############################

#默認情況下Redis會異步的將數據導出到磁盤上。這種模式對許多應用程序已經足夠了,
#但是如果斷電或者redis進程出問題就會導致一段時間內的更新數據丟失(取決與配置項)
#
#這種只增文件是可選的能夠提供更好的體驗的數據持久化策略。
#舉個例子,如果使用默認的配置數據fsync策略,在服務器意外斷電的情況下redis只會丟失一秒中內的更新數據,
#或者當redis進程出問題但操作系統運轉正常時,redis只會丟失一個數據更新操作。
#
#AOF 和 RDB 持久化方式可以同時啟動並且無沖突。
#如果AOF開啟,啟動redis時會加載aof文件,這些文件能夠提供更好的保證。
#請在 http://redis.io/topics/persistence 獲取更多數據持久化信息。

appendonly no

# 只增文件的文件名稱。(默認是appendonly.aof)
# appendfilename appendonly.aof

#調用fsync()函數會通知操作系統真正將數據寫入磁盤,而不是等待緩沖區中有更多數據。
#有些操作系統會將數據輸出到磁盤,有些操作系統只是ASAP。
#
#redis支持三種不同的方式:
#
#no:不調用,之等待操作系統來清空緩沖區當操作系統要輸出數據時。很快。
# always: 每次更新數據都寫入僅增日志文件。慢,但是最安全。
# everysec: 每秒調用一次。折中。
#
#默認是每秒中一次,因為它往往是在速度和數據安全兩者之間的折中選擇。
#如果你可以接受讓操作系統去自動清空緩存,你可以將這項配置降低到'no'(如果你可以接受一段時間的數據丟失,默認的rdb就足夠了),
#這完全取決與你。如果你想要一個更好的體驗或者從相反的角度,使用'always',這樣會很慢,但是比'everysec'安全些。
#
#請在下面的文章中獲取更多細節知識:
#  http://antirez.com/post/redis-persistence-demystified.html
#
#如果你不是很清楚這三項之間的區別,或者不知道哪種適合你的機器,就是用默認吧。

# appendfsync always
appendfsync always
# appendfsync no

#當AOF策略設置為'always'或者'everysec'的時候,后台的保存進程會進行很多磁盤I/O操作,
#在某些linux結構中redis會在調用sync()方法時阻塞很長時間。記住,現在還沒辦法解決這個問題,即使在不同進程中進行調用也會block。
#
#使用如下配置可能會緩解這個問題,這樣會在存儲大數據或者BIGREWRITEAOF的時候不會在主進程中調用fsync()方法。
#
# 這表示,如果另外一個子進程在進行保存操作,redis的表現如同配置為‘appendfsync no’。
#在實際應用中,這表示在最壞的情景下(使用linux默認配置)可能會丟失30秒日志。
#
#如果你有特殊的情況可以配置為'yes'。但是配置為'no'是最為安全的選擇。
no-appendfsync-on-rewrite no


#自動重寫只增文件。
#redis可以自動盲從的調用‘BGREWRITEAOF’來重寫日志文件,如果日志文件增長了指定的百分比。
#
#它是這樣工作的:每次rewrite后redis會記錄日志文件的大小。(如果重啟后沒有重寫后的大小,就默認用日志文件大小)
#
# 這個基准日志大小和當前日志大小做比較。如果當前大小比指定的百分比,重寫機制就會被觸發。
#同時,你也要制定一個重寫下線,用來避免增長百分比夠了,但是日志文件還很小的情況。
#
#指定百分比為0可以注掉自動重寫日志文件功能。

auto-aof-rewrite-percentage 100
auto-aof-rewrite-min-size 64mb


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM