Redis redis.conf 重要選項配置
阿新 • • 發佈:2019-01-29
**############### 一般配置 ###############** daemonize yes #是否以後臺守護程序執行,預設為no pidfile /var/run/redis.pid #如以後臺守護程序執行,則需指定一個pid,預設為/var/run/redis.pid bind 127.0.0.1 #繫結主機IP,預設值為127.0.0.1(註釋) port 6379 #監聽埠,預設為6379。如果埠設定為0,Redis就不會監聽TCP套接字。 timeout 300 #超時時間,預設為300(秒) loglevel notice #日誌級別,有4個可選值,debug,verbose(預設值),notice,warning # debug :(大量資訊,對開發/測試有用) # verbose :(很多精簡的有用資訊,但是不像debug等級那麼多) # notice :(適量的資訊,基本上是你生產環境中需要的) # warning :(只有很重要/嚴重的資訊會記錄下來) logfile /var/log/redis.log #日誌記錄方式,預設值為stdout syslog-enabled no #是否將日誌輸出到系統日誌 databases 16 #可用資料庫數,預設值為16,預設資料庫為0 **############### 快照方式 ###############** save 900 1 #在900s(15m)之後,至少有1個key發生變化,則快照 save 300 10 #在300s(5m)之後,至少有10個key發生變化,則快照 save 60 10000 #在60s(1m)之後,至少有1000個key發生變化,則快照 rdbcompression yes #dump時是否壓縮資料,預設為yes dbfilename dump.rdb #壓縮資料的檔名,預設值為dump.rdb dir ./ #資料(dump.rdb)檔案存放目錄,預設值為 ./ **############### 主從複製 ###############** slaveof <master_ip> <master_port> #主從複製使用,當本機為從服務時,設定主服務的IP及埠 masterauth <master-password> #當本機為從服務時,設定主服務的連線密碼 slave-serve-stale-data yes #當slave與master之間的連線斷開或slave正在與master進行資料同步時,如果有slave請求,當設定為yes時,slave仍然響應請求,此時可能有問題,如果設定no時,slave會返回"SYNC with master in progress"錯誤資訊。但INFO和SLAVEOF命令除外。 ############### 安全 ############### requirepass foobared #連線密碼,redis速度相當快,一個外部使用者在一秒鐘進行150K次密碼嘗試,需指定一個高強度的密碼來防止暴力破解 **############### 限制 ###############** maxclients 128 #最大客戶端連線數,預設0不限制。 maxmemory <bytes> #設定最大記憶體。 maxmemory-policy volatile-lru #如果達到maxmemory值,採用此策略 # volatile-lru :預設策略,只對設定過期時間的key進行LRU演算法刪除 # allkeys-lru :刪除不經常使用的key # volatile-random :隨機刪除即將過期的key # allkeys-random :隨機刪除一個key # volatile-ttl :刪除即將過期的key # noeviction :不過期,寫操作返回報錯 maxmemory-samples 3 #預設隨機選擇3個key,從中淘汰最不經常用的 ############### 附加模式 ############### appendonly no #是否在每次更新操作後進行日誌記錄,如果不開啟,可能會在斷電時導致一段時間內的資料丟失。因為redis本身同步資料檔案是按上面save條件來同步的,所以有的資料會在一段時間內只存在於記憶體中。預設值為no appendfilename appendonly.aof #更新日誌檔名,預設值為appendonly.aof(註釋) appendfsync everysec # 更新日誌條件,共有3個可選值。 # always 表示每次更新操作後手動呼叫fsync()將資料寫到appendonly.aof # everysec 預設方式,表示每秒同步一次appendonly.aof # no 不同步,資料不會持久化 no-appendfsync-on-rewrite no #當AOF日誌檔案即將增長到指定百分比時,redis通過呼叫BGREWRITEAOF是否自動重寫AOF日誌檔案。 ############### 虛擬記憶體 ############### really-use-vm yes vm-enabled yes #是否啟用虛擬記憶體機制,預設值為no,虛擬記憶體機將資料分頁存放,把很少訪問的頁放到swap上,記憶體佔用多,最好關閉虛擬記憶體 vm-swap-file /tmp/redis.swap #虛擬記憶體檔案路徑,預設值為/tmp/redis.swap,不可多個Redis例項共享 vm-max-memory 0 #redis使用的最大記憶體上限,保護redis不會因過多使用實體記憶體影響效能。0:不限制,建議60-80% 可用記憶體大小。 vm-page-size 32 #根據快取內容大小調整,預設32位元組。 vm-pages 134217728 #設定swap檔案中頁面數量。每 8 page,會佔用1位元組記憶體。 vm-page-size #vm-pages 等於 swap 檔案大小 vm-max-threads 4 #vm 最大io執行緒數,即訪問swap檔案的執行緒數。注意: 0 標誌禁止使用vm ############### 高階配置 ############### hash-max-zipmap-entries 512 #雜湊表中元素(條目)總個數不超過設定數量時,採用線性緊湊格式儲存來節省空間 hash-max-zipmap-value 64 #雜湊表中每個value的長度不超過多少位元組時,採用線性緊湊格式儲存來節省空間 list-max-ziplist-entries 512 #list資料型別多少節點以下會採用去指標的緊湊儲存格式 list-max-ziplist-value 64 #list資料型別節點值大小小於多少位元組會採用緊湊儲存格式 set-max-intset-entries 512 #set資料型別內部資料如果全部是數值型,且包含多少節點以下會採用緊湊格式儲存 activerehashing yes #是否啟用重置雜湊