最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

MySQL讀寫分離延遲之讀庫不是主庫的實時鏡像

 更新時間:2026年07月16日 10:09:22   作者:Dicky張  
復(fù)制延遲常讓用戶看到舊數(shù)據(jù),尤其是在訂單、權(quán)限和AI任務(wù)狀態(tài)里,這篇文章主要介紹了MySQL讀寫分離延遲之讀庫不是主庫的實時鏡像的相關(guān)資料,文中通過代碼介紹的非常詳細(xì),需要的朋友可以參考下

前言

讀寫分離是后端架構(gòu)常見優(yōu)化:寫走主庫,讀走從庫,降低主庫壓力。但讀庫不是主庫的實時鏡像。復(fù)制延遲一旦出現(xiàn),用戶剛寫完數(shù)據(jù)馬上讀,就可能讀到舊值。這個問題在訂單、權(quán)限、配置、AI 任務(wù)狀態(tài)里都很敏感。

讀寫分離不能只看吞吐,還要設(shè)計一致性體驗。

一、復(fù)制延遲是常態(tài)風(fēng)險

sequenceDiagram
  participant App
  participant Primary
  participant Replica
  App->>Primary: Write
  Primary-->>App: Success
  Primary->>Replica: Replication
  App->>Replica: Read
  Replica-->>App: Old Data

寫成功只代表主庫提交,不代表從庫已經(jīng)追上。延遲可能來自大事務(wù)、網(wǎng)絡(luò)、從庫 IO 或 SQL 線程壓力。

二、關(guān)鍵讀走主庫

寫后立刻讀的場景,可以短時間走主庫。

read_policy:
  after_write_window: 3s
  critical_resource: primary
  normal_list_page: replica

不是所有讀都要強一致。關(guān)鍵是把需要強一致的場景識別出來。

三、監(jiān)控復(fù)制延遲

SHOW REPLICA STATUS;

關(guān)注 Seconds_Behind_Source 只是開始,還要結(jié)合 relay log、IO thread、SQL thread 狀態(tài)。延遲指標(biāo)也要進(jìn)入應(yīng)用路由策略。

四、任務(wù)狀態(tài)別亂走讀庫

AI 后臺任務(wù)狀態(tài)、支付狀態(tài)、權(quán)限變更這類強依賴最新值的讀,不適合默認(rèn)走從庫。否則用戶會看到任務(wù)完成后頁面還顯示處理中。

strong_read_tables:
  - payment_order
  - ai_job_status
  - user_permission

架構(gòu)上可以給 DAO 或 repository 標(biāo)記一致性等級,而不是讓業(yè)務(wù)代碼隨手選數(shù)據(jù)源。

還可以在寫入后設(shè)置短期一致性標(biāo)記。比如用戶剛更新資料,接下來幾秒內(nèi)該用戶相關(guān)讀取走主庫。這樣不必讓所有請求都走主庫,也能保護(hù)寫后讀體驗。

read_after_write:
  key: user_id
  ttl: 3s
  route: primary

這種策略要謹(jǐn)慎控制范圍,否則會把主庫讀壓力重新打滿。

五、總結(jié)

MySQL 讀寫分離能提升讀能力,但讀庫不是主庫實時鏡像。寫后讀、任務(wù)狀態(tài)、權(quán)限、支付等場景要考慮強一致讀取。

讀寫分離不是把所有 SELECT 扔給從庫。知道哪些讀不能分,才是成熟架構(gòu)。

復(fù)制延遲不可怕,可怕的是業(yè)務(wù)假裝它不存在。把一致性等級顯式寫進(jìn)代碼,團(tuán)隊才知道自己在做什么取舍。

讀路由還要支持緊急切換。當(dāng)從庫延遲超過閾值時,關(guān)鍵讀自動回主庫,普通讀可以降級或提示稍后刷新。

replica_lag_policy:
  warn_at: 1s
  strong_read_to_primary_at: 2s
  disable_replica_at: 5s

這會增加主庫壓力,所以閾值要謹(jǐn)慎。但沒有策略,就只能在事故中手動改配置。

還要給用戶體驗留解釋。比如剛提交的配置還在同步中,可以提示“更新已保存,部分頁面可能稍后刷新”。這比讓用戶看到舊數(shù)據(jù)卻沒有解釋更好。

user_feedback:
  write_success: "已保存"
  replica_lag_hint: "數(shù)據(jù)同步中,請稍后刷新"
  force_primary_for_detail: true

當(dāng)然,支付、權(quán)限、任務(wù)狀態(tài)這類核心鏈路不要靠提示解決,應(yīng)該直接強一致讀取。提示只能用于低風(fēng)險體驗場景。

到此這篇關(guān)于MySQL讀寫分離延遲之讀庫不是主庫的實時鏡像的文章就介紹到這了,更多相關(guān)MySQL 讀寫分離延遲內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • 有關(guān)mysql中ROW_COUNT()的小例子

    有關(guān)mysql中ROW_COUNT()的小例子

    mysql中的ROW_COUNT()可以返回前一個SQL進(jìn)行UPDATE,DELETE,INSERT操作所影響的行數(shù)
    2013-02-02
  • 阿里云Centos 7.5安裝Mysql的教程

    阿里云Centos 7.5安裝Mysql的教程

    這篇文章主要介紹了阿里云Centos 7.5安裝Mysql的教程,需要的朋友可以參考下
    2017-07-07
  • MYSQL查詢結(jié)果實現(xiàn)發(fā)送給客戶端

    MYSQL查詢結(jié)果實現(xiàn)發(fā)送給客戶端

    這篇文章主要介紹了MYSQL查詢結(jié)果實現(xiàn)發(fā)送給客戶端方式,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2025-06-06
  • Mysql實現(xiàn)合并多個分組(GROUP_CONCAT及其平替函數(shù))

    Mysql實現(xiàn)合并多個分組(GROUP_CONCAT及其平替函數(shù))

    MySQL 中提供了多種合并字符串的函數(shù)和操作方法,包括 GROUP_CONCAT、CONCAT_WS 和 CONCAT 等,本文介紹了 MySQL 中 GROUP_CONCAT 函數(shù)以及 CONCAT_WS、CONCAT 函數(shù)并通過示例代碼演示了它們的用法,感興趣的可以了解一下
    2023-10-10
  • mysql8.0.20數(shù)據(jù)目錄遷移的方法

    mysql8.0.20數(shù)據(jù)目錄遷移的方法

    這篇文章主要介紹了mysql8.0.20數(shù)據(jù)目錄遷移的方法,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2021-02-02
  • SQL觸發(fā)器定義與使用

    SQL觸發(fā)器定義與使用

    SQL的觸發(fā)器和存儲過程一樣,都是嵌入到SQL中的一段程序,是SQL中管理數(shù)據(jù)的有力工具,本文給大家詳細(xì)介紹SQL觸發(fā)器的定義語法知識,感興趣的朋友一起看看吧
    2023-01-01
  • mysql 5.7.24 壓縮包安裝配置方法圖文教程

    mysql 5.7.24 壓縮包安裝配置方法圖文教程

    這篇文章主要介紹了mysql 5.7.24 壓縮包安裝配置方法圖文教程,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2019-08-08
  • Mac下忘記mysql密碼重新設(shè)置密碼的圖文教程

    Mac下忘記mysql密碼重新設(shè)置密碼的圖文教程

    這篇文章主要介紹了Mac下忘記mysql密碼重新設(shè)置密碼的教程,非常不錯具有參考借鑒價值,需要的朋友可以參考下
    2016-12-12
  • mysql之set與enum的介紹

    mysql之set與enum的介紹

    本篇文章是對mysql中的set與enum進(jìn)行了詳細(xì)的分析介紹,需要的朋友參考下
    2013-06-06
  • mysql存儲過程用法實例分析

    mysql存儲過程用法實例分析

    這篇文章主要介紹了mysql存儲過程用法,結(jié)合實例形式簡單分析了mysql存儲過程的概念、功能、定義、執(zhí)行、調(diào)用等相關(guān)操作技巧,需要的朋友可以參考下
    2018-03-03

最新評論

韩城市| 鸡东县| 大姚县| 来安县| 和政县| 黎川县| 晋州市| 乌兰察布市| 石泉县| 措美县| 调兵山市| 庐江县| 杭锦后旗| 南澳县| 新巴尔虎右旗| 香河县| 闸北区| 平舆县| 枞阳县| 新巴尔虎右旗| 泾川县| 开阳县| 抚远县| 迁西县| 青岛市| 林周县| 望江县| 平舆县| 泸水县| 屯昌县| 石棉县| 秦安县| 公安县| 黑龙江省| 阆中市| 温宿县| 嘉禾县| 佛冈县| 马山县| 余姚市| 文化|