日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区

您的位置:首頁技術文章
文章詳情頁

Mysql讀寫分離過期常用解決方案

瀏覽:31日期:2023-10-11 14:55:54

mysql讀寫分離的坑

讀寫分離的主要目標是分攤主庫的壓力,由客戶端選擇后端數據庫進行查詢。還有種架構就是在MYSQL和客戶端之間有一個中間代理層proxy,客戶端之連接proxy,由proxy根據請求類型和上下文決定請求的分發路由。

客戶端直連方案:因為少了一層proxy轉發,所以查詢性能稍微好一點兒,并且整體架構簡單,排查問題更方便。但是這種方案,由于要了解后端部署細節,所以在出現主備切換、庫遷移等操作的時候,客戶端都會感知到,并且需要調整數據庫連接信息。 帶proxy架構:對客戶端比較友好??蛻舳?#63847;需要關注后端細節,連接維護、后端信息維護等工作,都是由proxy完成的。但這樣的話,對后端維護團隊的要求會更高。

無論使用哪種架構,由于主從可能存在延遲,客戶端執行完一個更新事務后馬上發起查詢,如果查詢選擇的是從庫的話,就有可能讀到剛剛的事務更新之前的狀態。這種“在從庫上會讀到系統的一個過期狀態”的現象,我們暫且稱之為“過期讀”。

方案一:強制走主庫方案

將查詢請求分為兩類:

對于必須要拿到最新結果的請求,強制將其發到主庫上。比如,在一個交易平臺上,賣家發布商品以后,馬上要返回主頁面,看商品是否發布成功。那么,這個請求需要拿到最新的結果,就必須走主庫。 對于可以讀到舊數據的請求,才將其發到從庫上。在這個交易平臺上,買家來逛商鋪頁面,就算晚幾秒看到最新發布的商品,也是可以接受的。那么,這類請求就可以走從庫。這個方案的最大問題在于會碰到所有查詢都不是“過期讀”的需求,比如金融類業務,這樣就要放棄讀寫分離,所有的壓力都在主庫。采用以下方案。

方案二:Sleep方案

主庫更新后,讀從庫之前先sleep一下,類似執行了select sleep(1)命令,這個方案的假設是,大多數情況下主備延遲在1秒之內,做一個sleep可以有很大概率拿到最新的數據。

以賣家發布商品為例,商品發布后,用Ajax直接把客戶端輸入的內容作為“新的商品”顯示在頁面上,而不是真正地去數據庫做查詢。這樣,賣家就可以通過這個顯示,來確認產品已經發布成功了。等到賣家再刷新頁面,去查看商品的時候,其實已經過了一段時間,也就達到了sleep的目的,進而也就解決了過期讀的問題。

方案三:判斷主備無延遲方案:

第一種方法:先用show slave status結果里的seconds_behind_master參數的值,可以用來衡量主備延遲時間的長短。先判斷這個參數值是否為0,如果不為0,必須等到這個參數變為0才能執行請求。

第二種方法:對比位點確保主備無延遲。

Master_Log_File和Read_Master_Log_Pos,表示的是讀到的主庫的最新位點; Relay_Master_Log_File和Exec_Master_Log_Pos,表示的是備庫執行的最新位點。

如果Master_Log_File和Relay_Master_Log_File、Read_Master_Log_Pos和Exec_Master_Log_Pos這兩組值完全相同,就表示接收到的日志已經同步完成。

第三種方法:對比GTID(全局事物ID)確保主備無延遲

Auto_Position=1 ,表示這對主備關系使用了GTID協議。 Retrieved_Gtid_Set,是備庫收到的所有日志的GTID集合; Executed_Gtid_Set,是備庫所有已經執行完成的GTID集合。

如果這兩個集合相同,表示備庫接收到的日志都已經同步完成。

方案四:等主庫位點方案

select master_pos_wait(file, pos[, timeout]);

這條命令是在從庫執行的 ,參數file和pos指的是主庫上的文件名和位置,timeout表示這個函數最多等待N秒。

這個命令正常返回的結果是一個正整數M,表示從命令開始執行,到應用完file和pos表示的binlog位置,執行了多少事務。 如果備庫同步線程發生異常,則返回null 如果等待超過N秒,就返回-1 如果剛開始執行就發現已經執行過了,則返回0

Mysql讀寫分離過期常用解決方案

如圖:先執行trx1,再執行一個查詢請求的邏輯,要保證能夠查到正確的數據,我們可以使用

這個邏輯

1. trx1事物更新完成后,馬上執行show master status得到當前主庫執行到的File和Position;

2. 選定一個從庫執行查詢語句;

3. 在從庫上執行select master_pos_wait(File, Position, 1);

4. 如果返回值是>=0的正整數,則在這個從庫執行查詢語句;

5. 否則,到主庫執行查詢語句。

這里我們假設,這條select查詢最多在從庫上等待1秒。那么,如果1秒內master_pos_wait返回一個大于等于0的整數,就確保了從庫上執行的這個查詢結果一定包含了trx1的數據。

5到主庫執行查詢語句,是這類方案常用的退化機制。因為從庫的延遲時間不可控,不能無限等待,所以如果等待超時,就應該放棄,然后到主庫去查。按照我們設定不允許過期讀的要求,就只有兩種選擇,一種是超時放棄,一種是轉到主庫查詢。

并發連接和并發查詢

innodb_thread_concurrency參數是控制innodb的并發線程上限。一旦超過這個數值,新請求就會進入等待。

show processlist看到的幾千個連接,是值并發連接,而當前正在執行的語句,才是并發查詢。并發連接影響不大,只是會多占內存,而并發查詢才是CPU殺手。 在線程進入鎖等待以后,并發線程的計數會建議,也就是等行鎖的線程是不算在并發查詢里的。因為所等待已經不吃CPU了

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持好吧啦網。

標簽: MySQL 數據庫
相關文章:
日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区
久久久久欧美精品| 日韩一区二区三区免费视频| 国产精品亚洲成在人线| 日本91福利区| 国产精品99精品一区二区三区∴| 亚洲人www| 亚洲精选久久| 国产精品极品国产中出| av最新在线| 欧美特黄一区| 日韩高清在线不卡| 麻豆国产精品| 蜜桃国内精品久久久久软件9| 免费黄色成人| 欧美日韩一区二区三区不卡视频| 日韩中文字幕| 青青久久av| 男人的天堂久久精品| 久久久久久久久99精品大| 9色精品在线| 91精品视频一区二区| 99热国内精品| 欧美激情三区| 日韩精品中文字幕吗一区二区| 久久精品99久久无色码中文字幕| 91成人在线| 亚洲一二av| 亚洲美女久久| 精品一区在线| 欧美黄色一区| 国产传媒在线观看| 视频一区国产视频| 亚洲一区日韩在线| 午夜免费一区| 国产精品99一区二区三区| 高清不卡一区| 日本在线成人| 91精品国产福利在线观看麻豆| 午夜精品福利影院| 999国产精品视频| 国产精品亚洲一区二区在线观看| 日韩视频网站在线观看| 91精品国产自产在线丝袜啪| 国产99精品| 激情久久一区二区| 亚洲精品一二| 亚洲在线国产日韩欧美| 久久久久免费| 日韩高清中文字幕一区| 成人久久久久| 国产精品永久| 亚洲日本久久| 亚洲一级大片| 欧美日韩视频| 久久国产日本精品| 福利视频一区| 精品亚洲成人| 国产毛片久久久| 亚洲ab电影| 视频一区视频二区在线观看| 激情综合自拍| 国产视频一区在线观看一区免费| 成人一区而且| 老色鬼精品视频在线观看播放| 在线一区视频| 视频精品一区二区| 蜜桃一区二区三区在线| 亚洲高清影视| 亚洲一区观看| 亚洲一区国产| 四虎在线精品| 91综合久久爱com| 国产高清亚洲| 日韩毛片视频| 亚洲精品在线观看91| 不卡中文字幕| 亚洲主播在线| 国产精品最新| 天堂av在线| 精精国产xxxx视频在线播放| 久久久人人人| 日韩精品一二三四| 91亚洲精品在看在线观看高清| 国产精品99久久久久久董美香| 日韩免费看片| 视频一区视频二区中文字幕| 国产探花一区二区| 国产美女高潮在线| 国精品一区二区三区| 亚洲一区二区小说| 精品国产亚洲一区二区三区| 1024精品一区二区三区| 国产精品成人自拍| 高清av一区| 石原莉奈在线亚洲三区| 青草久久视频| 亚洲国产综合在线看不卡| 久久不射网站| 精品国产中文字幕第一页| 免费观看久久av| 欧美国产三级| 在线观看亚洲精品福利片| 精品少妇一区| 蜜桃视频在线观看一区二区| 成人亚洲一区| 日韩欧美2区| 婷婷综合网站| 伊伊综合在线| 国产精品久久国产愉拍| 久久九九99| 麻豆国产精品777777在线| 日韩一区二区免费看| 成人影视亚洲图片在线| 欧美一区91| 在线观看一区| 久热精品在线| 蜜桃tv一区二区三区| 精品黄色一级片| 国产精品一区二区三区www| 久久午夜影视| 日韩一区二区久久| 五月精品视频| 欧美成人日韩| 欧美一区三区| 国产成人精品一区二区三区视频 | 麻豆国产一区| 久久精品72免费观看| 日韩不卡一区二区三区| 日韩在线一区二区| 蜜臀av性久久久久蜜臀aⅴ流畅| 久久国产精品成人免费观看的软件| 国产成人精品一区二区三区视频| 久久激情综合网| 国产欧美日本| 久久久精品区| 91一区二区三区四区| 涩涩av在线| 婷婷亚洲五月| 视频一区视频二区中文字幕| 亚洲精品少妇| 欧美一区精品| 精品一区二区三区中文字幕视频| 鲁大师精品99久久久| 精品三级在线| 久久香蕉国产| 免费在线观看日韩欧美| 97精品国产99久久久久久免费| 综合激情视频| 国产精品网址| 欧美日韩精品免费观看视欧美高清免费大片| 福利在线免费视频| 伊人久久大香线蕉av超碰演员| 日韩一级欧洲| 国产欧美亚洲一区| 999精品一区| 在线一区免费观看| 91精品国产自产精品男人的天堂 | 91精品一区二区三区综合| 亚洲免费在线| 老司机精品视频网| 日韩亚洲国产欧美| 热久久久久久| 中文字幕在线视频网站| 综合激情婷婷| 另类中文字幕国产精品| 午夜久久av| 影视先锋久久| 精品九九久久| 四虎精品永久免费| 成人久久一区| 国产激情综合| 亚欧成人精品| 日韩视频一区| 久久男人av资源站| 日本午夜精品视频在线观看| 日韩精品久久久久久久电影99爱| 亚洲精品黄色| 香蕉国产精品| 丝袜美腿诱惑一区二区三区| 国产日韩免费| 日本v片在线高清不卡在线观看| 99免费精品| 久久国产直播| 日韩一区三区| 国产一区二区三区四区五区传媒| 少妇精品久久久一区二区| 国产亚洲精品久久久久婷婷瑜伽| 国产在线看片免费视频在线观看| 国产精品一区二区美女视频免费看| 蜜桃av一区二区三区电影| 免费久久久久久久久| 首页国产精品| 久久精品免费看| 另类欧美日韩国产在线| 欧美精品97| 精品国产91| 日韩深夜视频| 久久要要av| 欧美日韩国产探花| 亚洲在线成人|