1. <ul id="0c1fb"></ul>

      <noscript id="0c1fb"><video id="0c1fb"></video></noscript>
      <noscript id="0c1fb"><listing id="0c1fb"><thead id="0c1fb"></thead></listing></noscript>

      99热在线精品一区二区三区_国产伦精品一区二区三区女破破_亚洲一区二区三区无码_精品国产欧美日韩另类一区

      RELATEED CONSULTING
      相關(guān)咨詢
      選擇下列產(chǎn)品馬上在線溝通
      服務(wù)時(shí)間:8:30-17:00
      你可能遇到了下面的問題
      關(guān)閉右側(cè)工具欄

      新聞中心

      這里有您想知道的互聯(lián)網(wǎng)營(yíng)銷解決方案
      【MySQL】組提交技術(shù)的閱讀思考

      組提交難點(diǎn)

      一.給leader進(jìn)程帶來了不公平

      成都創(chuàng)新互聯(lián)公司公司2013年成立,先為樺南等服務(wù)建站,樺南等地企業(yè),進(jìn)行企業(yè)商務(wù)咨詢服務(wù)。為樺南企業(yè)網(wǎng)站制作PC+手機(jī)+微官網(wǎng)三網(wǎng)同步一站式服務(wù)解決您的所有建站問題。

      二.兼顧redo和binlog順序的對(duì)應(yīng)

      三.事務(wù)redo與binlog的寫流程與fsync時(shí)機(jī)(沒有引進(jìn)組提交時(shí)的流程)

      四.為什么要組提交?(簡(jiǎn)單組提交下的弊病,硬件資源速度的不一致性,帶來的優(yōu)勢(shì))

      關(guān)鍵參數(shù)與流程

      flush階段

      • 將Binlog寫入內(nèi)存,(好像沒有Binlog buffer的說法,直接寫入內(nèi)存,內(nèi)存寫入條帶文件)。

      • binlog_max_flush_queue_time 每多少秒去寫入一次Binlog到內(nèi)存(官方)。flush階段中一批事務(wù)等待的時(shí)間。類似于檢票處一次用Bodycheck牌擋住一定數(shù)量的人。默認(rèn)0,這個(gè)參數(shù)已經(jīng)廢棄

      sync->commit階段,主要是在sync,sync(刷盤binlog)。若sync_binlog不為1,多個(gè)組應(yīng)該卡在這兒。豈不是導(dǎo)致commit ack變慢?不對(duì),只是加速

      • binlog_group_commit_sync_delay 應(yīng)該是用來控制leader進(jìn)度的,也就是發(fā)車間隔時(shí)間。這個(gè)是導(dǎo)致leader不公平的主要原因。單位微妙。微妙級(jí)別的話,相對(duì)于刷盤的時(shí)間,leader的不公平看起來微乎其微。

      • binlog_group_commit_sync_no_delay_count 最低發(fā)車座位數(shù), 類似于定員流水發(fā)車大巴,車上的人到達(dá)一定的數(shù)量后,直接發(fā)車,不在等待一個(gè)最小發(fā)車間隔

      commit階段 redo log buffer刷盤

      • sync_binlog的含義就變了,假定設(shè)為1000,表示的不是1000個(gè)事務(wù)后做一次fsync,而是1000個(gè)事務(wù)組。默認(rèn)1的話就是,1個(gè)事務(wù)組提交一次fsync Binlog
        也就是說,比如, 1-1000個(gè)事務(wù),前面999個(gè)都沒有sync,默認(rèn)是sync成功的。第1000個(gè)事務(wù)時(shí)進(jìn)行真正的binlog sync 。若中間掛了,沒有sync成功,那么1-1000事務(wù)的binlog 都沒有被記錄

      • 第一次等待的時(shí)間可能不太好理解,,應(yīng)該是第一次分批限流。比方說,保證流入sync階段的都是按時(shí)間分段的,而不是離散的算是預(yù)分組吧。找不到很合適的例子說明

      總結(jié)

      在讀寫IO相對(duì)于內(nèi)存的速度有很大差距的情況下,把單次離散寫,合并成批量連續(xù)寫。硬盤的尋道時(shí)間要比順序?qū)懹脖P的時(shí)間要慢很多。盡量少尋道,也是一種思路

      參考

      阿里月報(bào) 201501
      https://www.kancloud.cn/taobaoMySQL/monthly/67157

      官方手冊(cè)
      https://dev.mysql.com/doc/refman/5.7/en/replication-options-reference.html

      姜承堯
      《Innodb存儲(chǔ)引擎 P322》

      延伸閱讀

      fb關(guān)于組提交的文章 發(fā)布時(shí)間:2010 年 10 月 7 日 周四 02:16
      https://www.facebook.com/notes/mysql-at-facebook/group-commit/438641125932/
      沒有精力

      其實(shí)看源碼最直接,沒有精力


      當(dāng)前題目:【MySQL】組提交技術(shù)的閱讀思考
      標(biāo)題網(wǎng)址:http://ef60e0e.cn/article/jjpgdc.html
      99热在线精品一区二区三区_国产伦精品一区二区三区女破破_亚洲一区二区三区无码_精品国产欧美日韩另类一区
      1. <ul id="0c1fb"></ul>

        <noscript id="0c1fb"><video id="0c1fb"></video></noscript>
        <noscript id="0c1fb"><listing id="0c1fb"><thead id="0c1fb"></thead></listing></noscript>

        合川市| 玉树县| 广昌县| 赤壁市| 广丰县| 大埔区| 军事| 阿合奇县| 泰和县| 屏东县| 陆良县| 红原县| 海晏县| 永顺县| 盐津县| 景洪市| 思南县| 罗山县| 河曲县| 江油市| 金山区| 宁陕县| 潜山县| 毕节市| 扶风县| 龙海市| 林芝县| 鹤庆县| 临城县| 准格尔旗| 宿松县| 霍城县| 互助| 定襄县| 曲水县| 牡丹江市| 芮城县| 新郑市| 肃宁县| 义乌市| 明光市|