key |
default |
示例 |
描述 |
daemonize |
yes |
|
是否之後臺進程運行,默認爲no,若是須要之後臺進程運行則改成yes |
pidfile |
/var/run/redis.pid |
|
若是之後臺進程運行的話,就須要指定pid,你能夠在此自定義redis.pid文件的位置。 |
tcp-backlog |
511 |
|
在高併發環境下你須要一個高backlog值來避免慢客戶端鏈接問題。注意Linux內核默默地將這個值減少到/proc/sys/net/core/somaxconn的值,因此須要確認增大somaxconn和tcp_max_syn_backlog兩個值來達到想要的效果。 |
bind |
|
192.168.1.100 10.0.0.1 |
默認Redis監聽服務器上全部可用網絡接口的鏈接。能夠用"bind"配置指令跟一個或多個ip地址來實現監聽一個或多個網絡接口 |
unixsocket |
|
/tmp/redis.sock |
指定用來監聽Unix套套接字的路徑。沒有默認值, 因此在沒有指定的狀況下Redis不會監聽Unix套接字 |
unixsocketperm |
|
755 |
|
timeout |
0 |
|
一個客戶端空閒多少秒後關閉鏈接。 |
tcp-keepalive |
0 |
|
在Linux上,這個指定的值(單位:秒)就是發送ACK的時間間隔,這個選項的一個合理值是60秒。 |
loglevel |
notice |
|
指定服務器調試等級 |
logfile |
"" |
|
指明日誌文件名。也可使用"stdout"來強制讓Redis把日誌信息寫到標準輸出上。注意:若是Redis以守護進程方式運行,而設置日誌顯示到標準輸出的話,日誌會發送到/dev/null |
syslog-enabled |
|
no |
要使用系統日誌記錄器,只要設置 "syslog-enabled" 爲 "yes" 就能夠了。 |
syslog-ident |
|
redis |
指明syslog身份 |
syslog-facility |
|
local0 |
指明syslog的設備。必須是user或LOCAL0 ~ LOCAL7之一。 |
databases |
20000 |
|
設置數據庫個數。默認數據庫是 DB 0,能夠經過select <dbid> (0 <= dbid <= 'databases' - 1 )來爲每一個鏈接使用不一樣的數據庫。 |
stop-writes-on-bgsave-error |
yes |
|
默認若是開啓RDB快照(至少一條save指令)而且最新的後臺保存失敗,Redis將會中止接受寫操做, 這將使用戶知道數據沒有正確的持久化到硬盤,不然可能沒人注意到而且形成一些災難。 |
rdbcompression |
yes |
|
當導出到 .rdb 數據庫時是否用LZF壓縮字符串對象,默認設置爲 "yes",由於幾乎在任何狀況下它都是不錯的。 |
rdbchecksum |
yes |
|
由於版本5的RDB有一個CRC64算法的校驗和放在了文件的最後。這將使文件格式更加可靠但在生產和加載RDB文件時,這有一個性能消耗(大約10%),因此你能夠關掉它來獲取最好的性能。 |
dir |
./ |
|
工做目錄,數據庫會寫到這個目錄下,文件名就是上面的 "dbfilename" 的值。 |
slaveof |
|
<masterip> <masterport> |
主從同步。經過 slaveof 指令來實現Redis實例的備份。 |
masterauth |
|
<master-password> |
若是master設置了密碼保護(經過 "requirepass" 選項來配置),那麼slave在開始同步以前必須進行身份驗證,不然它的同步請求會被拒絕。 |
slave-serve-stale-data |
yes |
|
當一個slave失去和master的鏈接,或者同步正在進行中,slave的行爲有兩種可能:1) 若是 slave-serve-stale-data 設置爲 "yes" (默認值),slave會繼續響應客戶端請求,多是正常數據,也多是還沒得到值的空數據。2) 若是 slave-serve-stale-data 設置爲 "no",slave會回覆"正在從master同步(SYNC with master in progress)"來處理各類請求,除了 INFO 和 SLAVEOF 命令。 |
slave-read-only |
yes |
|
你能夠配置salve實例是否接受寫操做。可寫的slave實例可能對存儲臨時數據比較有用(由於寫入salve的數據在同master同步以後將很容被刪除),可是若是客戶端因爲配置錯誤在寫入時也可能產生一些問題。 |
repl-ping-slave-period |
10 |
|
slave根據指定的時間間隔向master發送ping請求。 |
repl-timeout |
|
60 |
同步超時時間,確保這個值大於指定的repl-ping-slave-period,不然在主從間流量不高時每次都會檢測到超時 |
repl-disable-tcp-nodelay |
no |
|
是否在slave套接字發送SYNC以後禁用 TCP_NODELAY |
repl-backlog-size |
|
1mb |
設置數據備份的backlog大小。backlog是一個slave在一段時間內斷開鏈接時記錄salve數據的緩衝 |
repl-backlog-ttl |
|
3600 |
當master在一段時間內再也不與任何slave鏈接,backlog將會釋放。如下選項配置了從最後一個slave斷開開始計時多少秒後,backlog緩衝將會釋放。 |
slave-priority |
100 |
|
slave的優先級是一個整數展現在Redis的Info輸出中。若是master再也不正常工做了,哨兵將用它來選擇一個slave提高=升爲master。優先級數字小的salve會優先考慮提高爲master,因此例若有三個slave優先級分別爲10,100,25,哨兵將挑選優先級最小數字爲10的slave。0做爲一個特殊的優先級,標識這個slave不能做爲master,因此一個優先級爲0的slave永遠不會被哨兵挑選提高爲master |
min-slaves-to-write |
0 |
3 |
單位個 |
min-slaves-max-lag |
10 |
10 |
單位秒 |
requirepass |
|
foobared |
要求客戶端在處理任何命令時都要驗證身份和密碼。 |
rename-command |
|
CONFIG "" |
命令重命名 |
maxclients |
10000 |
|
設置最多同時鏈接的客戶端數量。默認這個限制是10000個客戶端, |
maxmemory-policy |
volatile-lru |
|
最大內存策略:若是達到內存限制了,Redis如何選擇刪除key。你能夠在下面五個行爲裏選:volatile-lru -> 根據LRU算法生成的過時時間來刪除。allkeys-lru -> 根據LRU算法刪除任何key。volatile-random -> 根據過時設置來隨機刪除key。 allkeys->random -> 無差異隨機刪。 volatile-ttl -> 根據最近過時時間來刪除(輔以TTL) noeviction -> 誰也不刪,直接在寫操做時返回錯誤。 |
maxmemory-samples |
3 |
|
LRU和最小TTL算法的實現都不是很精確,可是很接近(爲了省內存),因此你能夠用樣本量作檢測。 |
appendonly |
no |
|
默認狀況下,Redis是異步的把數據導出到磁盤上。這種模式在不少應用裏已經足夠好,但Redis進程出問題或斷電時可能形成一段時間的寫操做丟失(這取決於配置的save指令)。 |
appendfilename |
appendonly.aof |
|
純累加文件名字 |
appendfsync |
everysec |
|
系統調用告訴操做系統把數據寫到磁盤上,而不是等更多的數據進入輸出緩衝區。everysec每秒寫一次。折中方案。 |
no-appendfsync-on-rewrite |
no |
|
若是把這個設置成"yes"帶來了延遲問題,就保持"no",這是保存持久數據的最安全的方式。 |
auto-aof-rewrite-percentage |
100 |
|
若是AOF日誌文件增大到指定百分比,Redis可以經過 BGREWRITEAOF 自動重寫AOF日誌文件。 |
auto-aof-rewrite-min-size |
64mb |
|
重寫日誌的最小尺寸,這樣避免了達到指定百分比但尺寸仍然很小的狀況還要重寫。 |
lua-time-limit |
5000 |
|
Lua 腳本的最大執行時間,毫秒爲單位 |
slowlog-log-slower-than |
10000 |
|
Redis慢查詢日誌能夠記錄超過指定時間的查詢。 |
slowlog-max-len |
128 |
|
這個長度沒有限制。只是要主要會消耗內存。你能夠經過 SLOWLOG RESET 來回收內存。 |
notify-keyspace-events |
"" |
|
Redis 能通知 Pub/Sub 客戶端關於鍵空間發生的事件 |
hash-max-ziplist-entries |
512 |
|
|
hash-max-ziplist-value |
64 |
|
|
list-max-ziplist-entries |
512 |
|
|
list-max-ziplist-value |
64 |
|
|
set-max-intset-entries |
512 |
|
|
zset-max-ziplist-entries |
128 |
|
|
zset-max-ziplist-value |
64 |
|
|
activerehashing |
yes |
|
啓用哈希刷新,每100個CPU毫秒會拿出1個毫秒來刷新Redis的主哈希表(頂級鍵值映射表) |
client-output-buffer-limit |
normal 0 0 0 |
|
客戶端的輸出緩衝區的限制 |
client-output-buffer-limit |
slave 256mb 64mb 60 |
|
客戶端的輸出緩衝區的限制 |
client-output-buffer-limit |
pubsub 32mb 8mb 60 |
|
客戶端的輸出緩衝區的限制 |
hz |
10 |
|
Redis調用內部函數來執行許多後臺任務,如關閉客戶端超時的鏈接,清除未被請求過的過時Key等等。 |
aof-rewrite-incremental-fsync |
yes |
|
當一個子進程重寫AOF文件時,若是啓用下面的選項,則文件每生成32M數據會被同步。爲了增量式的寫入硬盤而且避免大的延遲高峯這個指令是很是有用的 |
save |
900 1 |
|
把數據庫存到磁盤上:900秒(15分鐘)以後,且至少1次變動 |
save |
300 10 |
|
300秒(5分鐘)以後,且至少10次變動 |
save |
60 10000 |
|
60秒以後,且至少10000次變動 |