redis 快照部分,追加模式部分,複製部分配置

四,快照部分node

1:「save * *」:保存快照的頻率,第一個*表示多長時間,單位是秒,第二個「*」表示至少執行寫操做的次數;redis

在必定時間內至少執行必定數量的寫操做時,就自動保存快照;可設置多個條件。算法

若是想禁用RDB持久化的策略,只要不設置任何save指令,或者給save傳入一個空字符串參數也能夠緩存

若是用戶開啓了RDB快照功能,那麼在Redis持久化數據到磁盤時若是出現失敗,默認狀況下,安全

Redis會中止接受全部的寫請求。這樣作的好處在於可讓用戶很明確的知道內存中的數據和磁盤上的服務器

數據已經存在不一致了。若是下一次RDB持久化成功,redis會自動恢復接受寫請求。app

2:stop-writes-on-bgsave-error:若是配置成no,表示你不在意數據不一致或者有其餘的手段發現和控制tcp

這種不一致,那麼在快照寫入失敗時,也能確保redis繼續接受新的寫請求性能

3:rdbcompression:對於存儲到磁盤中的快照,能夠設置是否進行壓縮存儲。若是是的話,redis會採用ui

LZF算法進行壓縮。若是你不想消耗CPU來進行壓縮的話,能夠設置爲關閉此功能

4:rdbchecksum:在存儲快照後,還可讓redis使用CRC64算法來進行數據校驗,可是這樣作會增長大約

10%的性能消耗,若是但願獲取到最大的性能提高,能夠關閉此功能

5:dbfilename:數據快照文件名(只是文件名,不包括目錄),默認dump.rdb

6:dir:數據快照的保存目錄(這個是目錄),默認是當前路徑

五,追加模式部分

1:appendonly:是否開啓AOF

2:appendfilename:設置AOF的日誌文件名

3:appendfsync:設置AOF日誌如何同步到磁盤,fsync()調用,用來告訴操做系統當即將緩存的指令寫入磁

盤,有三個選項:

(1)always:每次寫都強制調用fsync,這種模式下,redis會相對較慢,但數據最安全

(2)everysec:每秒啓用一次fsync

(3)no:不調用fsync()。而是讓操做系統自行決定sync的時間。這種模式下,redis的性能會最快

4:no-appendfsync-on-rewrite:設置當redis在rewrite的時候,是否容許appendsync。由於redis進程在

進行AOF重寫的時候,fsync()在主進程中的調用會被阻止,也就是redis的持久化功能暫時失效。默認

爲no,這樣能保證數據安全

5:auto-aof-rewrite-min-size:設置一個最小大小,是爲了防止在aof很小時就觸發重寫

5:auto-aof-rewrite-percentage:設置自動進行AOF重寫的基準值,也就是重寫啓動時的AOF文件大小,假

如redis自啓動至今尚未進行太重寫,那麼啓動時aof文件的大小會被做爲基準值。這個基準值會和當

前的aof大小進行比較。若是當前aof大小超出所設置的增加比例,則會觸發重寫。若是設置auto-aofrewrite-

percentage爲0,則會關閉此重寫功能

六,複製部分

1:slaveof :指定某一個redis做爲另外一個redis的從服務器,經過指定IP和端口來設置主redis。建議爲從

redis設置一個不一樣頻率的快照持久化的週期,或者爲從redis配置一個不一樣的服務端口

2:masterauth:若是主redis設置了驗證密碼的話(使用requirepass來設置),則在從redis的配置中要使

用masterauth來設置校驗密碼,不然的話,主redis會拒絕從redis的訪問請求

3:slave-serve-stale-data:設置當從redis失去了與主redis的鏈接,或者主從同步正在進行中時,redis

該如何處理外部發來的訪問請求。

若是設置爲yes(默認),則從redis仍會繼續響應客戶端的讀寫請求。若是設置爲no,則從

redis會對客戶端的請求返回「SYNC with master in progress」,固然也有例外,當客戶端發來INFO

請求和SLAVEOF請求,從redis仍是會進行處理。從redis2.6版本以後,默認從redis爲只讀。

4:slave-read-only:設置從Redis爲只讀

5:repl-ping-slave-period:設置從redis會向主redis發出PING包的週期,默認是10秒

6:repl-timeout:設置主從同步的超時時間,要確保這個時限比repl-ping-slave-period的值要大,不然

每次主redis都會認爲從redis超時。

7:repl-disable-tcp-nodelay:設置在主從同步時是否禁用TCP_NODELAY,若是開啓,那麼主redis

會使用更少的TCP包和更少的帶寬來向從redis傳輸數據。可是這可能會增長一些同步的延遲,大

概會達到40毫秒左右。若是關閉,那麼數據同步的延遲時間會下降,可是會消耗更多的帶寬。

8:repl-backlog-size:設置同步隊列長度。隊列長度(backlog)是主redis中的一個緩衝區,在與

從redis斷開鏈接期間,主redis會用這個緩衝區來緩存應該發給從redis的數據。這樣的話,當

從redis從新鏈接上以後,就沒必要從新全量同步數據,只須要同步這部分增量數據便可

9:repl-backlog-ttl:設置主redis要等待的時間長度,若是主redis等了這麼長時間以後,仍是無

法鏈接到從redis,那麼緩衝隊列中的數據將被清理掉。設置爲0,則表示永遠不清理。默認是1

個小時。

10:slave-priority:設置從redis優先級,在主redis持續工做不正常的狀況,優先級高的從redis

將會升級爲主redis。而編號越小,優先級越高。當優先級被設置爲0時,這個從redis將永遠也

不會被選中。默認的優先級爲100。

11:min-slaves-to-write:設置執行寫操做所需的最少從服務器數量,若是至少有這麼多個從服務

器, 而且這些服務器的延遲值都少於min-slaves-max-lag 秒, 那麼主服務器就會執行客戶端

請求的寫操做

12:min-slaves-max-lag:設置最大鏈接延遲的時間, min-slaves-to-write和min-slaves-max-lag

中有一個被置爲0,則這個特性將被關閉。默認狀況下min-slaves-to-write爲0,而min-slaves-max-lag爲10

相關文章
相關標籤/搜索