好湿?好紧?好多水好爽自慰,久久久噜久噜久久综合,成人做爰A片免费看黄冈,机机对机机30分钟无遮挡

主頁 > 知識庫 > Redis主從配置和底層實現原理解析(實戰記錄)

Redis主從配置和底層實現原理解析(實戰記錄)

熱門標簽:山東外呼銷售系統招商 魔獸2青云地圖標注 十堰營銷電銷機器人哪家便宜 鄭州人工智能電銷機器人系統 北京400電話辦理收費標準 日本中國地圖標注 宿遷便宜外呼系統平臺 超呼電話機器人 貴州電銷卡外呼系統

我們使用Redis的時候往往都是主從模式或者集群架構,不會使用單臺Redis服務。

一、Redis主從配置實戰

我們使用master節點寫輸入,然后將數據同步到slave節點,從節點可以提供讀取或者備份的功能,分擔master節點壓力。

redis主從架構搭建,配置從節點步驟

1、 復制一份redis.conf文件為redis-6380.conf

cp ./redis.conf ./conf/redis-6380.conf

2、打開redis-6380.conf配置文件,將相關配置修改為如下值:

port 6380
pidfile /var/run/redis_6380.pid # 把pid進程號寫入pidfile配置的文件
logfile "6380.log"
dir /usr/local/redis‐5.0.3/data/6380 # 指定數據存放目錄
# 需要注釋掉bind
# bind 127.0.0.1(bind綁定的是自己機器網卡的ip,如果有多塊網卡可以配多個ip,代表允許客戶端通過機器的哪些網卡ip去訪問,內網一般可以不配置bind,注釋掉即可)

3、在redis-6380.conf中配置主從復制

replicaof 192.168.0.60 6379 # 從本機6379的redis實例復制數據,Redis 5.0之前使用slaveof. 這里的IP是redis服務IP
replica‐read‐only yes # 配置從節點只讀

注意: 如果的時候發現從節點中始終是空,即沒有同步到主節點的數據,可能是192.168.0.60的設置問題,如果是主從都在一臺服務器上,可以試試改成127.0.0.1.
4、啟動從節點

注意一下命令,我這里是相對路徑。

 ./src/redis-server ./conf/redis-6380.conf 

然后我們查看redis服務實例,發現6379和6380都已經啟動了。

5、連接從節點

[root@localhost redis-6.2.3]# ./src/redis-cli -p 6380
127.0.0.1:6380>

查看是否同步了數據:

127.0.0.1:6380> keys *
1) "test3"
2) "tul2"
3) "tul"
4) "tul3"
5) "test1"
6) "yaolao"
7) "test2"
127.0.0.1:6380> 

注意: 如果的時候發現從節點中始終是空,即沒有同步到主節點的數據,可能是192.168.0.60的設置問題,如果是主從都在一臺服務器上,可以試試改成127.0.0.1試試。、

6、測試在6379實例上寫數據,6380實例是否能及時同步新修改數據

7、可以自己再配置一個6381的從節點

至此。,我們的主從配置就完成了。我們可以自己去配置多個從節點。

二、主從實現原理

如果你為master配置了一個slave,不管這個slave是否是第一次連接上Master,它都會發送一個PSYNC命令給master請求復制數據。

master收到PSYNC命令后,會在后臺進行數據持久化通過bgsave生成最新的rdb快照文件,持久化期間,master會繼續接收客戶端的請求,它會把這些可能修改數據集的請求緩存在內存中。當持久化進行完畢以后,master會把這份rdb文件數據集發送給slave,slave會把接收到的數據進行持久化生成rdb,然后再加載到內存中。然后,master再將之前緩存在內存中的命令發送給slave。

當master與slave之間的連接由于某些原因而斷開時,slave能夠自動重連Master,如果master收到了多
個slave并發連接請求,它只會進行一次持久化,而不是一個連接一次,然后再把這一份持久化的數據發送
給多個并發連接的slave。

主從復制(全量復制)流程圖

psync命令是redis底層的C語言實現的。

數據部分復制

當master和slave斷開重連后,一般都會對整份數據進行復制。但從redis2.8版本開始,redis改用可以支持部分數據復制的命令PSYNC去master同步數據,slave與master能夠在網絡連接斷開重連后只進行部分數據復制(斷點續傳)。

master會在其內存中創建一個復制數據用的緩存隊列,緩存最近一段時間的數據,master和它所有的slave都維護了復制的數據下標offset和master的進程id,因此,當網絡連接斷開后,slave會請求master繼續進行未完成的復制,從所記錄的數據下標開始。如果master進程id變化了,或者從節點數據下標offset太舊,已經不在master的緩存隊列里了,那么將會進行一次全量數據的復制。

主從復制(部分復制,斷點續傳)流程圖:

如果slave節點掛了之后,只想同步新增的數據(不需要同步全部)。

最新的命令redis會寫到repl backlog buffer(默認大小是1MB)這個緩沖區中。

offset是偏移量,即上次復制產生的偏移量,再一次復制新的數據的時候只需要從這個偏移量后面開始復制即可。注意,這種只適合幾分鐘之內的。

如果從緩沖區沒有找到傳過來的這個偏移量,說明從節點可能掛了非常久的時間,這時候需要做全量復制,而不是斷點續傳了。

緩解主從復制風暴

如果有很多從節點,為了緩解主從復制風暴(多個從節點同時復制主節點導致主節點壓力過大),可以做如下架構,讓部分從節點與從節點(與主節點同步)同步數據,即配置主從的ip地址可以寫某個從節點的,而不是都寫mast節點的IP.

到此這篇關于Redis主從配置和底層實現原理解析(實戰記錄)的文章就介紹到這了,更多相關Redis主從配置內容請搜索腳本之家以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持腳本之家!

您可能感興趣的文章:
  • WINDOWS中REDIS主從配置實現代碼解析
  • Docker下redis的主從配置教程詳解
  • redis的主從配置方法詳解

標簽:果洛 江蘇 北京 朝陽 吉安 大慶 楊凌 臺州

巨人網絡通訊聲明:本文標題《Redis主從配置和底層實現原理解析(實戰記錄)》,本文關鍵詞  Redis,主從,配置,和,底層,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《Redis主從配置和底層實現原理解析(實戰記錄)》相關的同類信息!
  • 本頁收集關于Redis主從配置和底層實現原理解析(實戰記錄)的相關信息資訊供網民參考!
  • 推薦文章
    主站蜘蛛池模板: 欧美精品四级在线| 爽到让人喷水的与子乱小说| 男女无遮挡XXOO动态120| 飘雪影院免费版在线观看视频| 年轻人韩国高清在线观看| 欧美成人免费tv在线播放| 欲妇荡岳丰满大乳无码久久久久| 天天5g天天爽成人A片| 年轻的馊子1中字hd| 四虎1515hh海外永久免费在线| 美女裸体无遮挡奶头免费网站| 国产三级国产AV在线观看女明星| 俄罗斯一级黄色片| 日产女人奶头秘?无遮挡| 成人秋霞在线观看视频| 中文字幕在线乱码不卡区区| 波多野结衣被邻居中出视频| 日日摸夜夜添夜夜添爱摸摸漫画 | 用手指搅乱吧| 玩中年风韵妇女小说全篇| 国产性猛交?XX?乱下载下载| 久久视热这只是精品222| 日本精品久久久久网站| 午夜色女| 在寝室被室友c男男| 武林美妇巨蟒的肉欲艳史小说| segui999久久久久精品| 两个黑人玩一个日本护士| 真人偷拍 激情视频| 欧洲裸体XXXXX毛片D女| 亚洲综合p| 欧美性视频一区二区三区| 初尝黑人巨炮波多野结衣| 中文字幕欧美精品亚洲日韩蜜臀| 人妻va精品va欧美va18| 被调教成玩物的女教师电影| 他扒开我的裙底把舌头伸进去 | 色小妹在线| 张开腿我要上你h男男| 调教小受| 乖?好舒服?把腿张开微博|