redis資料丟失你怎麼處理?
1. 兩種資料丟失的情況
主備切換的過程,可能導致資料丟失;
1.1. 非同步複製導致的資料丟
因為master -> slave的複製是非同步的,所以可能有部分資料還沒複製到slave,master就當機了,此時這些部分資料就丟失了
1.2 腦裂導致的資料丟失
腦裂就是說,某個maser 所在機器突然脫離了正常的網路,跟其他slave機器不能連線,但是實際上master還執行著,此時哨兵可能就會認為master 當機了,然後開啟選舉,將其他slave切換成了master,這個時候,叢集裡面就會有2個master,也就是所謂的腦裂,此時雖然某個slave被切換成了master,但是可能client還沒來得及切換到新的master,還繼續寫向舊master的資料可能也丟失了,因此master再次恢復的時候,會被作為一個slave掛到新的master 上去,自己的資料將會清空,重新從新的master 複製資料
2. 解決非同步複製和腦裂資料導致的資料丟失
# redis.conf 配置
Min-slaves-to-write 1
Min-slaves-max-lag 10
上面這兩個配置可以減少非同步複製和腦裂導致的資料丟失
###2.1 減少非同步複製的資料丟失
有了min-slaves-max-lag這個配置,可以確保說,一旦slave複製資料和ack延遲太長,就認為可能master 當機後損失的資料太多了,那麼就拒絕寫請求,這樣可以吧master當機時由於部分資料丟失。
2.2 減少腦裂的資料丟失
如果一個master出現了腦裂,跟其他slave丟了連線,那麼上面這兩個配置可以去確保說,如果不能繼續給指定數量的slave傳送資料,而且slave超過10秒沒有給自己ack訊息,那麼就直接拒絕客戶端的寫請求,這樣腦裂活的舊master就不會接受client的新資料,也就避免了資料丟失,上面配置確保了,如果跟任何一個slave丟了連線,在10秒後發現沒有slave給自己ack,那麼就拒絕新的寫請求,因此腦裂場景下,最多丟失10秒的資料。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/2459/viewspace-2825789/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 儲存崩潰導致資料丟失如何處理
- Oracle impdp遷移資料後主鍵丟失故障處理Oracle
- Redis能保證資料不丟失嗎?Redis
- 伺服器資料丟失了怎麼恢復/分割槽丟失恢復教程伺服器
- 關於丟失表空間資料檔案的處理方式
- 香港伺服器資料丟失怎麼解決?伺服器
- OGG整合抽取模式丟失歸檔處理模式
- Windows11電腦丟失了資料該怎麼恢復?Windows
- Oracle DataGuard歸檔日誌丟失處理方法Oracle
- oracle中undo表空間丟失處理方法Oracle
- Jtti:怎樣正確處理Redis中的海量資料JttiRedis
- Jison解決JS處理後端返回的Long型資料精度丟失問題JS後端
- 電腦硬碟資料丟失後怎麼恢復?硬碟資料恢復技巧教程硬碟資料恢復
- 何處理資料恢復 資料丟失 面試tx的架構師的崗位問的資料恢復面試架構
- 雲伺服器redis重啟資料丟失如何解決伺服器Redis
- 優步是如何用Kafka構建可靠的重試處理保證資料不丟失Kafka
- mq要如何處理訊息丟失、重複消費?MQ
- Java:利用BigDecimal類巧妙處理Double型別精度丟失JavaDecimal型別
- 作為一款記憶體資料庫,為什麼斷電後Redis資料不會丟失記憶體資料庫Redis
- 硬碟資料丟失如何恢復?硬碟
- 分割槽丟失資料恢復資料恢復
- 伺服器不同的故障導致資料丟失都怎麼解決的伺服器
- win10系統出現啟動配置資料丟失怎麼解決Win10
- 伺服器硬碟離線強制上線資料丟失怎麼恢復?伺服器硬碟
- u盤資料丟失怎麼恢復?有效的恢復方法在這裡
- Apache Ignite 學習筆記(五): Primary和backup資料同步模式和處理分片丟失的策略Apache筆記模式
- RocketMQ的訊息是怎麼丟失的MQ
- Win10系統右鍵選單新建資料夾丟失不能新建資料夾怎麼辦Win10
- Dede呼叫資料庫失敗,無法實現資料處理資料庫
- 09.redis 哨兵主備切換時資料丟失的解決方案Redis
- 記錄一次重啟伺服器 Redis 資料丟失問題伺服器Redis
- SQLServer複製到execl丟失資料SQLServer
- Kafka零資料丟失的配置方案Kafka
- 重組raid會丟失資料嗎AI
- 如何找回分割槽丟失的資料
- Elasticsearch如何保證資料不丟失?Elasticsearch
- Redis 中如何保證資料的不丟失,Redis 中的持久化是如何進行的Redis持久化
- 面試官問:Kafka 會不會丟訊息?怎麼處理的?面試Kafka