国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

redis復(fù)制參數(shù)調(diào)優(yōu)

IT那活兒 / 1567人閱讀
redis復(fù)制參數(shù)調(diào)優(yōu)
本次主要對repl-backlog-size參數(shù)如何影響主從復(fù)制在斷開重連之后的數(shù)據(jù)同步方式,進行了測試。

redis版本4.0.12



一. 首先搭建一套主從復(fù)制環(huán)境


  1. 在服務(wù)器上啟動兩臺redis實例,6379和6380

  2. 生成測試數(shù)據(jù)

  3. 創(chuàng)建主從復(fù)制,6379為主



二. 模仿主從復(fù)制連接中斷


  1. 使用防火墻模擬主從復(fù)制連接中斷

  2. 模擬在復(fù)制中斷過程中,主庫正常接受請求

    數(shù)據(jù)量約156K



三. 模擬中斷恢復(fù)


查看恢復(fù)之后主庫的日志
cat master.out



四. 增大中斷時候?qū)胫鲙斓臄?shù)據(jù)量


  1. 將主從實例停止并刪除日志和轉(zhuǎn)儲文件之后重復(fù)前面的步驟將環(huán)境恢復(fù)到主從復(fù)制狀態(tài)。

  2. 模擬主從復(fù)制中斷

  3. 生產(chǎn)更多的數(shù)據(jù)量導(dǎo)入主庫

    數(shù)據(jù)量約2M

  4. 恢復(fù)中斷

  5. 查看恢復(fù)之后主庫與從庫的日志

    cat master.out

    cat slave.out



五. 總結(jié)


從兩次的日志當(dāng)中可以看出來,數(shù)據(jù)量少的時候主從連接恢復(fù)的時候,同步數(shù)據(jù)采用的是部分同步,而數(shù)據(jù)量多的時候采用的是完全同步。這是因為當(dāng)中斷期間主庫接受的數(shù)據(jù)量小于repl-backlog-size的值就會采用部分同步,反之就會使用完全同步。repl-backlog-size的默認(rèn)值為1M。

部分同步是通過向主庫發(fā)送,中斷前最后使用的offset和主實例ID向主庫發(fā)送部分同步請求,主庫首先確認(rèn)ID與自己是否一致,之后判斷offset能否從backlog緩沖區(qū)中獲取。如果可以獲取,從就可以獲得連接斷開期間所有寫命令,完成同步。

完全同步需要創(chuàng)建后臺線程生成轉(zhuǎn)儲文件,這需要額外的內(nèi)存開銷,之后還需將轉(zhuǎn)儲文件傳輸給從庫,而部分同步則不需要,所以部分同步的代價更小應(yīng)當(dāng)更多的使用部分同步,當(dāng)主庫接收數(shù)據(jù)量較大的時候,默認(rèn)的repl-backlog-size值很容易導(dǎo)致使用完全同步。所以需要根據(jù)數(shù)據(jù)量調(diào)整repl-backlog-size的值,計算公式如下:

t * (master_repl_offset2 – master_repl_offset1) / (t2 – t1)

t是主從連接可能斷開的時間,秒為單位,master_repl_offset通過峰值期間Info命令獲取。


END


更多精彩干貨分享

點擊下方名片關(guān)注

IT那活兒

文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請注明本文地址:http://m.specialneedsforspecialkids.com/yun/129904.html

相關(guān)文章

  • 貼一貼我的后端開發(fā)面試題

    摘要:線程有幾種狀態(tài)生命周期是怎樣的線程有五種狀態(tài)創(chuàng)建就緒運行阻塞死亡。當(dāng)線程獲得到等待的資源資源或者引起阻塞的條件得到滿足時調(diào)用或,會從阻塞狀態(tài)進入就緒狀態(tài)。使用,允許最多個線程同時訪問資源。 轉(zhuǎn)載請注明出處: 貼一貼我的后端開發(fā)面試題。 本文是面試回寢室后憑記憶羅列出來的問題,大概90%的問題都在這里面了,有幾個問題的實在是想不起來了= =,有些問題自我感覺回答的不好,所以我是查了資料...

    Batkid 評論0 收藏0
  • Redis 常規(guī)知識點整理

    摘要:常規(guī)的知識點整理將持續(xù)更新不僅僅做緩存使用,某種場景下可以當(dāng)做數(shù)據(jù)庫使用,替換,因為是可以持久化的,所以可以直接和進行交互而則不能當(dāng)數(shù)據(jù)庫使用,只能作緩存使用,不能替換。的實際處理速度完全依靠主進程的執(zhí)行效率。 redis 常規(guī)的知識點整理---將持續(xù)更新... 1.redis 不僅僅做緩存使用,某種場景下可以當(dāng)做數(shù)據(jù)庫使用,替換 mysql,因為 Redis 是可以持久化的,所以可以...

    sunny5541 評論0 收藏0
  • 史上最全阿里 Java 面試題總結(jié)

    摘要:以下為大家整理了阿里巴巴史上最全的面試題,涉及大量面試知識點和相關(guān)試題。的內(nèi)存結(jié)構(gòu),和比例。多線程多線程的幾種實現(xiàn)方式,什么是線程安全。點擊這里有一套答案版的多線程試題。線上系統(tǒng)突然變得異常緩慢,你如何查找問題。 以下為大家整理了阿里巴巴史上最全的 Java 面試題,涉及大量 Java 面試知識點和相關(guān)試題。 JAVA基礎(chǔ) JAVA中的幾種基本數(shù)據(jù)類型是什么,各自占用多少字節(jié)。 S...

    winterdawn 評論0 收藏0
  • Java性能優(yōu)化之性能調(diào)優(yōu)常用參數(shù)設(shè)置

    摘要:作用默認(rèn),即,適當(dāng)調(diào)整年輕代大小,可以一定層度上較少出現(xiàn)的概率其余性能調(diào)優(yōu)常用參數(shù)設(shè)置指定的初始和最大堆內(nèi)存大小,兩值可以設(shè)置相同,以避免每次垃圾回收完成后重新分配內(nèi)存。 Java性能優(yōu)化之針對分代垃圾回收調(diào)整 [TOC] JVM內(nèi)存的系統(tǒng)級的調(diào)優(yōu)主要的目的是減少Minor GC的頻率和Full GC的次數(shù),過多的Minor GC和Full GC是會占用很多的系統(tǒng)資源,影響系統(tǒng)的吞吐...

    Jrain 評論0 收藏0

發(fā)表評論

0條評論

IT那活兒

|高級講師

TA的文章

閱讀更多
最新活動
閱讀需要支付1元查看
<