《Redis配置文件詳解(redis.conf)》要點:
本文介紹了Redis配置文件詳解(redis.conf),希望對您有用。如果有疑問,可以聯(lián)系我們。
# vi redis.conf
daemonize yes #是否以后臺進程運行
pidfile /var/run/redis/redis-server.pid #pid文件地位
port 6379#監(jiān)聽端口
bind 127.0.0.1 #綁定地址,如外網(wǎng)必要連接,設(shè)置0.0.0.0
timeout 300 #連接超時時間,單元秒
loglevel notice #日志級別,分離有:
# debug :適用于開發(fā)和測試
# verbose :更詳細信息
# notice :適用于生產(chǎn)環(huán)境
# warning :只記錄警告或差錯信息
logfile /var/log/redis/redis-server.log #日志文件地位
syslog-enabled no #是否將日志輸出到系統(tǒng)日志
databases 16#設(shè)置數(shù)據(jù)庫數(shù)量,默認數(shù)據(jù)庫為0
############### 快照方式 ###############
save 900 1 #在900s(15m)之后,至少有1個key產(chǎn)生變化,則快照
save 300 10 #在300s(5m)之后,至少有10個key產(chǎn)生變化,則快照
save 60 10000 #在60s(1m)之后,至少有1000個key產(chǎn)生變化,則快照
rdbcompression yes #dump時是否壓縮數(shù)據(jù)
dir /var/lib/redis #數(shù)據(jù)庫(dump.rdb)文件寄存目錄
############### 主從復(fù)制 ###############
slaveof <masterip> <masterport> #主從復(fù)制使用,用于本機redis作為slave去連接主redis
masterauth <master-password> #當master設(shè)置暗碼認證,slave用此選項指定master認證暗碼
slave-serve-stale-data yes #當slave與master之間的連接斷開或slave正在與master進行數(shù)據(jù)同步時,如果有slave哀求,當設(shè)置為yes時,slave仍然響應(yīng)哀求,此時可能有問題,如果設(shè)置no時,slave會返回"SYNC with master in progress"錯誤信息.但INFO和SLAVEOF命令除外.
############### 平安 ###############
requirepass foobared #配置redis連接認證暗碼
############### 限制 ###############
maxclients 128#設(shè)置最年夜連接數(shù),0為不限制
maxmemory <bytes>#內(nèi)存清理策略,如果到達此值,將采取以下動作:
# volatile-lru :默認策略,只對設(shè)置過期時間的key進行LRU算法刪除
# allkeys-lru :刪除不常常使用的key
# volatile-random :隨機刪除即將過期的key
# allkeys-random :隨機刪除一個key
# volatile-ttl :刪除即將過期的key
# noeviction :不外期,寫操作返回報錯
maxmemory-policy volatile-lru#如果達到maxmemory值,采納此策略
maxmemory-samples 3 #默認隨機選擇3個key,從中淘汰最不常常用的
############### 附加模式 ###############
appendonly no #AOF持久化,是否記錄更新操作日志,默認redis是異步(快照)把數(shù)據(jù)寫入當?shù)卮疟P
appendfilename appendonly.aof #指定更新日志文件名
# AOF持久化三種同步策略:
# appendfsync always #每次有數(shù)據(jù)產(chǎn)生變化時都會寫入appendonly.aof
# appendfsync everysec #默認方式,每秒同步一次到appendonly.aof
# appendfsync no #分歧步,數(shù)據(jù)不會持久化
no-appendfsync-on-rewrite no #當AOF日志文件即將增長到指定百分比時,redis通過挪用BGREWRITEAOF是否自動重寫AOF日志文件.
############### 虛擬內(nèi)存 ###############
vm-enabled no #是否啟用虛擬內(nèi)存機制,虛擬內(nèi)存機將數(shù)據(jù)分頁存放,把很少拜訪的頁放到swap上,內(nèi)存占用多,最好關(guān)閉虛擬內(nèi)存
vm-swap-file /var/lib/redis/redis.swap #虛擬內(nèi)存文件地位
vm-max-memory 0 #redis使用的最大內(nèi)存上限,掩護redis不會因過多使用物理內(nèi)存影響性能
vm-page-size 32 #每個頁面的年夜小為32字節(jié)
vm-pages 134217728 #設(shè)置swap文件中頁面數(shù)量
vm-max-threads 4 #拜訪swap文件的線程數(shù)
############### 高級配置 ###############
hash-max-zipmap-entries 512 #哈希表中元素(條目)總個數(shù)不超過設(shè)定數(shù)量時,采納線性緊湊格式存儲來節(jié)省空間
hash-max-zipmap-value 64 #哈希表中每個value的長度不超過多少字節(jié)時,采納線性緊湊格式存儲來節(jié)省空間
list-max-ziplist-entries 512 #list數(shù)據(jù)類型多少節(jié)點以下會采納去指針的緊湊存儲格式
list-max-ziplist-value 64 #list數(shù)據(jù)類型節(jié)點值大小小于多少字節(jié)會采納緊湊存儲格式
set-max-intset-entries 512 #set數(shù)據(jù)類型內(nèi)部數(shù)據(jù)如果全部是數(shù)值型,且包括多少節(jié)點以下會采用緊湊格式存儲
activerehashing yes #是否激活重置哈希
總結(jié):
1、redis提供幾種持久化機制:
a). RDB持久化
工作方式 :根據(jù)時間的間隔將redis中數(shù)據(jù)快照(dump)到dump.rdb文件
優(yōu)勢 :備份恢復(fù)簡單.RDB通過子進程完成持久化工作,相對照AOF啟動效率高
劣勢 :服務(wù)器故障會喪失幾分鐘內(nèi)的數(shù)據(jù)
b). AOF持久化
工作方式 :以日志的形式記錄所有更新操作到AOF日志文件,在redis服務(wù)重新啟動時會讀取該日志文 件來重新構(gòu)建數(shù)據(jù)庫,以保證啟動后數(shù)據(jù)完整性.
優(yōu)勢 :AOF提供兩種同步機制,一個是fsync always每次有數(shù)據(jù)變化就同步到日志文件和fsync everysec每秒同步一次到日志文件,最年夜限度保證數(shù)據(jù)完整性.
劣勢:日志文件相對RDB快照文件要年夜的多
AOF日志重寫功能 :AOF日志文件過大,redis會自動重寫AOF日志,append模式賡續(xù)的將更新記錄寫入到老日志文件中,同時redis還會創(chuàng)建一個新的日志文件用于追加后續(xù)的記錄.
c). 同時應(yīng)用AOF和RDB
對于數(shù)據(jù)平安性高的場景,可同時使用AOF和RDB,這樣會降低性能.
d). 無持久化
禁用redis服務(wù)持久化功能.
2、AOF日志文件出錯后,修復(fù)辦法 :
redis-check-aof --fix appendonly.aof #--fix參數(shù)為修復(fù)日志文件,不加則對日志反省
3、不重啟redis從RDB持久化切換到AOF持久化 :
redis-cli> CONFIG SET appendonly yes #啟用AOF
redis-cli> CONFIG SET save "" #封閉RDB
《Redis配置文件詳解(redis.conf)》是否對您有啟發(fā),歡迎查看更多與《Redis配置文件詳解(redis.conf)》相關(guān)教程,學精學透。維易PHP學院為您提供精彩教程。
轉(zhuǎn)載請注明本頁網(wǎng)址:
http://www.fzlkiss.com/jiaocheng/9225.html