日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > 数据库 >内容正文

数据库

《Redis开发与运维》笔记-复制

發布時間:2023/12/10 数据库 32 豆豆
生活随笔 收集整理的這篇文章主要介紹了 《Redis开发与运维》笔记-复制 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

《Redis開發與運維》筆記-復制

  • 配置
    • 建立復制
    • 斷開復制
    • 安全性
    • 傳輸延遲
  • 原理
    • 復制過程
    • 數據同步
    • 全量復制
    • 部分復制

配置

建立復制

建立復制有三種方式:

  • 在配置文件中加入配置,跟隨Redis啟動生效
  • slaveof <masterip> <masterport>
  • 在redis-server啟動命令后加入 “–slaveof masterip masterport”。
  • redis-server --slaveof 127.0.0.1 6379
  • 在客戶端直接使用命令,slaveof masterip masterport
  • slaveof 127.0.0.1 6379

    斷開復制

    直接執行命令斷開復制,slaveof no one

    slaveof no one

    Redis可以直接通過slaveof命令切換主節點
    Redis在切換主節點過程中,會先清理刪除本地舊數據,在進行復制操作。

    安全性

    一般在設置Redis配置中,我們會通過設置requirepass參數進行密碼驗證。所以在從節點復制主節點就需要配置參數masterauth來配置主節點密碼。
    在復制過程中,一般需要配置從節點為只讀屬性,防止修改從節點數據導致主從節點數據不一致,通過設置參數slave-read-only

    slave-read-only yes

    傳輸延遲

    復制過程中,會存在網絡延遲等問題。Redis提供了一個配置可以設置進行優化

    //默認下此配置為關閉 repl-disable-tcp-nodelay no

    當關閉時,主節點產生的命令數據無論大小都會及時地發送給從節點,這樣主從節點的延遲會變小,但是會增加網絡帶寬消耗。
    當開啟時,主節點會合并較小的TCP數據包從而減少帶寬。默認發送時間間隔取決于Linux的內核,一般默認為40毫秒。

    原理

    復制過程

    數據同步

    數據同步過程分為全量同步和部分同步兩種方式。通過使用psync命令操作同步。

    psync runId offset

    psync命令運行需要組件支持:

  • 主從節點各自復制偏移量。
  • 主節點復制積壓緩沖區。
  • 主節點運行id。
  • 主節點運行id每次啟動都會變更,可以采用 debug reload命令執行重啟,不會變更run_id

    psync命令運行流程

    參數offset是當前從節點保存的復制偏移量,如果是第一次參數復制,則默認值是-1
    如果主節點回復 +FULLRESYNC 那么從節點將觸發全量復制
    如果主節點回復 +CONTINUE,從節點觸發部分復制
    如果主節點回復 -ERR 說明主節點不識別psync命令。可能是主節點版本過低。

    全量復制

    全量復制流程圖:

    部分復制

    部分復制流程圖:

    總結

    以上是生活随笔為你收集整理的《Redis开发与运维》笔记-复制的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。