国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

Redis主從架構、數據同步原理、全量同步、增量同步

這篇具有很好參考價值的文章主要介紹了Redis主從架構、數據同步原理、全量同步、增量同步。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

Redis主從架構、數據同步原理、全量同步、增量同步

大家好,我是哪吒。

專欄導讀

2023年再不會Redis,就要被淘汰了

圖解Redis,談談Redis的持久化,RDB快照與AOF日志

Redis單線程還是多線程?IO多路復用原理

Redis集群的最大槽數為什么是16384個?

Redis緩存穿透、擊穿、雪崩到底是個啥?7張圖告訴你

Redis分布式鎖的實現方式

Redis分布式緩存、秒殺

一、Redis主從架構

單節(jié)點Redis的并發(fā)能力是有上限的,要進一步提高Redis的并發(fā)能力,就需要搭建主從集群,實現讀寫分離。
Redis主從架構、數據同步原理、全量同步、增量同步

二、數據同步原理

master如何判斷slave是不是第一次來同步數據?這里會用到兩個很重要的概念:

1、Replication Id:簡稱replid,是數據集的標記,id一致則說明是同一數據集。每一個master都有唯一的replid,slave則會繼承master節(jié)點的replid
2、offset:偏移量,隨著記錄在repl_baklog中的數據增多而逐漸增大。slave完成同步時也會記錄當前同步的offset。如果slave的offset小于master的offset,說明slave數據落后于master,需要更新。

因此slave做數據同步,必須向master聲明自己的replication id 和offset,master才可以判斷到底需要同步哪些數據。

三、全量同步的流程

  1. slave節(jié)點請求增量同步;
  2. master節(jié)點判斷replid,發(fā)現不一致,拒絕增量同步;
  3. master將完整內存數據生成RDB,發(fā)送RDB到slave;
  4. slave清空本地數據,加載master的RDB;
  5. master將RDB期間的命令記錄在repl_baklog,并持續(xù)將log中的命令發(fā)送給slave;
  6. slave執(zhí)行接收到的命令,保持與master之間的同步;

三、可以從以下幾個方面來優(yōu)化Redis主從就集群

  1. 在master中配置repl-diskless-sync yes啟用無磁盤復制,避免全量同步時的磁盤IO;
  2. Redis單節(jié)點上的內存占用不要太大,減少RDB導致的過多磁盤IO;
  3. 適當提高repl_baklog的大小,發(fā)現slave宕機時盡快實現故障恢復,盡可能避免全量同步;
  4. 限制一個master上的slave節(jié)點數量,如果實在是太多slave,則可以采用主-從-從鏈式結構,減少master壓力

四、全量同步和增量同步區(qū)別?

全量同步:master將完整內存數據生成RDB,發(fā)送RDB到slave。后續(xù)命令則記錄在repl_baklog,逐個發(fā)送給slave;
增量同步:slave提交自己的offset到master,master獲取repl_baklog中從offset之后的命令給slave;

五、什么時候執(zhí)行全量同步?

slave節(jié)點第一次連接master節(jié)點時;
slave節(jié)點斷開時間太久,repl_baklog中的offset已經被覆蓋時;

六、什么時候執(zhí)行增量同步?

slave節(jié)點斷開又恢復,并且在repl_baklog中能找到offset時。

七、超賣問題

線程交替執(zhí)行,線程1【查詢庫存 -> 1】,
在進行庫存扣減前,
線程2執(zhí)行【查詢庫存 -> 1】,
線程2執(zhí)行【扣減庫存】,產生超賣問題?。。?/p>

Redis主從架構、數據同步原理、全量同步、增量同步

Redis主從架構、數據同步原理、全量同步、增量同步

??本文收錄于,Java基礎教程系列。

目前已經700+訂閱,CSDN最強Java專欄,包含全部Java基礎知識點、Java8新特性、Java集合、Java多線程、Java代碼實例,理論結合實戰(zhàn),實現Java的輕松學習。

??哪吒多年工作總結:Java學習路線總結,搬磚工逆襲Java架構師。文章來源地址http://www.zghlxwxcb.cn/news/detail-468877.html

到了這里,關于Redis主從架構、數據同步原理、全量同步、增量同步的文章就介紹完了。如果您還想了解更多內容,請在右上角搜索TOY模板網以前的文章或繼續(xù)瀏覽下面的相關文章,希望大家以后多多支持TOY模板網!

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。如若轉載,請注明出處: 如若內容造成侵權/違法違規(guī)/事實不符,請點擊違法舉報進行投訴反饋,一經查實,立即刪除!

領支付寶紅包贊助服務器費用

相關文章

  • elasticsearch+canal增量、全量同步

    elasticsearch+canal增量、全量同步

    目錄 一、搭建環(huán)境: 1.1 下載軟件上傳到linux目錄/data/soft下 1.2? 把所有軟件解壓到/data/es-cluster 二、單節(jié)點(多節(jié)點同理)集群部署elasticsearch 2.1 創(chuàng)建es用戶 2.2 準備節(jié)點通訊證書 2.3 配置elasticsearch,編輯/data/es-cluster/elasticsearch-7.9.0-node1/config/elasticsearch.yml文件 2.4 在每一臺集群

    2024年01月24日
    瀏覽(24)
  • Redis 主從同步原理

    Redis 主從同步原理

    一、什么是主從同步? 主從同步,就是將數據冗余備份,主庫(Master)將自己庫中的數據,同步給從庫(Slave)。 從庫可以一個,也可以多個,如圖所示: 二、為什么需要主從同步? Redis 雖然有 RDB 和 AOF 持久化技術,可以在服務器重啟的情況下保證內存中的數據不會丟失(

    2024年02月15日
    瀏覽(14)
  • DataEase開源BI工具安裝_數據全量_增量同步_大屏拖拽自動生成_多數據源支持_數據血緣分析---大數據工作筆記0183

    DataEase開源BI工具安裝_數據全量_增量同步_大屏拖拽自動生成_多數據源支持_數據血緣分析---大數據工作筆記0183

    我這里用的是Centos7.9安裝的 可以通過uname -p來查看一下我們的電腦架構,可以看到是x86_64架構的 ?我們下第一個,這個是x86架構的,第二個arm架構的? ? 然后解壓到/opt/module中 ? 然后再去重命名一下文件夾.? 推薦200G? 本地模式的功能比較多 推薦100G ?

    2024年02月15日
    瀏覽(18)
  • DataX-阿里開源離線同步工具在Windows上實現Sqlserver到Mysql全量同步和增量同步

    DataX-阿里開源離線同步工具在Windows上實現Sqlserver到Mysql全量同步和增量同步

    Kettle-開源的ETL工具集-實現SqlServer到Mysql表的數據同步并部署在Windows服務器上: Kettle-開源的ETL工具集-實現SqlServer到Mysql表的數據同步并部署在Windows服務器上_etl實現sqlserver報表服務器_霸道流氓氣質的博客-CSDN博客 上面講過Kettle的使用,下面記錄下阿里開源異構數據源同步工具

    2024年02月08日
    瀏覽(27)
  • Redis 主從數據同步

    Redis 主從數據同步

    Redis 的高可靠性 : 數據盡量少丟失 : AOF/RDB 保證 服務盡量少中斷 : 增加副本冗余量,同數據保存多個實例 Redis 提供主從庫模式,保證數據副本的一致 主從庫間采用 : 讀寫分離的方式 讀操作:主庫、從庫都接收 寫操作:先到主庫執(zhí)行,再把主庫的寫操作同步給從庫 主從庫同

    2024年02月02日
    瀏覽(19)
  • 離線數據倉庫-關于增量和全量

    離線數據倉庫-關于增量和全量

    應用系統(tǒng)所產生的業(yè)務數據是數據倉庫的重要數據來源,我們需要每日定時從業(yè)務數據庫中抽取數據,傳輸到數據倉庫中,之后再對數據進行分析統(tǒng)計。 為了方便上層指標的統(tǒng)計,數據的同步策略有 全量同步 和 增量同步 。 同步方式是針對對應的表而言的! 為什么要做數據

    2024年01月17日
    瀏覽(37)
  • 如何選擇離線數據集成方案 - 全量&增量

    如何選擇離線數據集成方案 - 全量&增量

    1 前言 我在上一篇中介紹了實時集成與離線集成該怎么選擇,接著介紹一下離線集成中的增量與全量的選擇問題。 要設計方案,我們先分析一下數據產生的方式。我們把音視頻流這種非結構化的數據集成從這里排除出去,因為這種音視頻流一般都是專業(yè)的廠商和系統(tǒng)來處理。

    2024年02月02日
    瀏覽(19)
  • Redis集群(分布式緩存):詳解持久化、主從同步原理、哨兵機制、Cluster分片集群,實現高并發(fā)高可用

    Redis集群(分布式緩存):詳解持久化、主從同步原理、哨兵機制、Cluster分片集群,實現高并發(fā)高可用

    ? ? ? ? 單機式Redis存在以下問題,因此需要Redis集群化來解決這些問題 ???????Redis數據快照,簡單來說就是 把內存中的所有數據都記錄到磁盤中 。當Redis實例故障重啟后,從 磁盤讀取快照文件,恢復數據 ??煺瘴募Q為RDB文件,默認是保存在當前運行目錄。 ?? ?(1)

    2024年02月08日
    瀏覽(26)
  • 全量、增量數據在HBase遷移的多種技巧實踐

    全量、增量數據在HBase遷移的多種技巧實踐

    作者經歷了多次基于HBase實現全量與增量數據的遷移測試,總結了在使用HBase進行數據遷移的多種實踐,本文針對全量與增量數據遷移的場景不同,提供了1+2的技巧分享。 1.背景 在HBase使用過程中,使用的HBase集群經常會因為某些原因需要數據遷移。大多數情況下,可以用離線

    2024年02月06日
    瀏覽(18)
  • 什么是全量數據、增量數據?如何統(tǒng)一一套系統(tǒng)?

    一、什么是全量數據、增量數據? 1.全量數據 2.增量數據 二、如何統(tǒng)一一套系統(tǒng) 1.為什么需要統(tǒng)一一套系統(tǒng)來處理全量數據和增量數據? 2.如何實踐? 全量數據和增量數據是在數據庫系統(tǒng)遷移時的概念。 ? ? ? ? 當前需要遷移的數據庫系統(tǒng)的全部數據。 ? ? ? ? 在數據庫系

    2024年02月05日
    瀏覽(26)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領取紅包,優(yōu)惠每天領

二維碼1

領取紅包

二維碼2

領紅包