redis主從同步機制
高可用:
1.資料儘量少丟失 aof/rdb
2.服務儘量少中斷 主從模式
讀寫分離 從庫讀操作 主庫支援讀寫操作
為什麼分離 如果主從都可以寫,必然涉及 加鎖,例項協商
主從同步過程
1.從庫執行slave of 主庫地址,當該命令執行後,會傳送給主庫一個命令,告知主庫開始給我同步
2.主庫fork一個子程式,開始生產rdb檔案.
為什麼不用aof ?rdb小,頻寬消耗小. 解析速度快
注意:fork操作其實是會阻塞的.
再看一下增量同步
1. repl_backlog_buffer用於主從間的增量同步。主節點只有一個repl_backlog_buffer緩衝區,各個從節點的offset偏移量都是相對該緩衝區而言的。
2. replication buffer用於主節點與各個從節點間 資料的批量互動。主節點為各個從節點分別建立一個緩衝區,由於各個從節點的處理能力差異,各個緩衝區資料可能不同
repl_backlog_buffer裡面存的也是寫操作命令
replication buffer就是 bufferedWriter,寫緩衝區.每個client都有
repl_backlog_buffer是所有從庫共享的,slave_repl_offset是由從庫自己記錄的,這也是因為每個從庫的複製進度不一定相同
為什麼有主從從同步?
主從從同步
1.為什麼出現級聯同步
主同步時,會fork生成rdb檔案,可能會阻塞,會消耗記憶體,cpu.傳輸會消耗頻寬
總結:
- Redis採用讀寫分離的好處:避免了加鎖,例項間協商是否完成修改等複雜操作
- 全量同步的發生時機:首次上線 和 從庫的環形緩衝區位置標識被覆蓋
- 增量同步保障機制依賴於一個特殊的資料結構:環形緩衝區
- 首次同步分為三個階段,①:建立連線,②:同步RDB檔案,③:同步增量資料
- 全量同步需要主機fork子程式,產生全量RDB檔案,併傳送,為了減輕主機的壓力,從機之間也可用互相同步
- 增量同步可以緩解主機全量同步的壓力,它需要特殊機制保障:replication buffer,環形緩衝區,master_repl_offset,slave_repl_offset
- 從機的同步位置標識,在環形緩衝區被覆蓋後,會觸發新的一輪全量同步,所repl_backlog_buffer的大小是redis重要的調優引數
- 主從同步有三種機制:全量同步,基於長連結的命令傳播(在寫這個筆記時把它忽略了),增量同步
怎麼解決主從同步延遲問題.
1.預設從庫會響應讀請求.我們可以設定從主庫讀取(slave-serve-stale-data)
2.監控.
可以監控主從同步的差距.如果太大,可以動態設定禁止讀從庫吧.
其他不清楚了
相關文章
- mysql主從同步機制MySql主從同步
- Redis主從同步Redis主從同步
- 圖解Redis,Redis主從複製與Redis哨兵機制圖解Redis
- Redis系列(四):Redis的複製機制(主從複製)Redis
- 深入分析Redis的主從複製機制Redis
- Redis主從同步配置實踐Redis主從同步
- Redis主從同步叢集搭建Redis主從同步
- redis安裝,主從複製,哨兵機制,叢集Redis
- 阿肝正傳之Redis主從同步Redis主從同步
- 用 docker 學習 redis 主從複製2 主從同步的offsetDockerRedis主從同步
- redis學習筆記——主從同步(複製)Redis筆記主從同步
- Window 10 單機配置MYSQL主從同步MySql主從同步
- Redis基礎篇(六)資料同步:主從複製Redis
- MongoDB主從模式手動強制同步資料方法MongoDB模式
- RocketMQ主從同步MQ主從同步
- mysql主從同步MySql主從同步
- 主從庫與切片叢集機制
- 從動物森友會聊主機遊戲聯機機制遊戲
- Redis主從配置Redis
- Redis主從搭建Redis
- Redis 主從配置Redis
- MySQL-技術專題-MySQL主從架構以及[半同步機制]模式大全MySql架構模式
- Redis主從複製的全量和增量同步介紹Redis
- redis原始碼分析(一)複習redis命令、持久化方案、主從同步原理、配置Redis原始碼持久化主從同步
- MySQL主從同步配置MySql主從同步
- Mongo主從同步原理Go主從同步
- Redis - 主從複製Redis
- Redis主從切換Redis
- Redis:主從複製Redis
- centos 搭建redis主從CentOSRedis
- docker 配置 Redis 主從DockerRedis
- Redis主從複製Redis
- Redis主從模式部署Redis模式
- redis主從備份Redis
- redis原始碼分析(一)複習redis命令、持久化方案、主從同步原來、配置Redis原始碼持久化主從同步
- MYSQL資料庫主從同步(一主一從)MySql資料庫主從同步
- 【Redis】Redis 主從複製之一Redis
- Redis分片機制Redis