一区二区三区在线-一区二区三区亚洲视频-一区二区三区亚洲-一区二区三区午夜-一区二区三区四区在线视频-一区二区三区四区在线免费观看

服務(wù)器之家:專注于服務(wù)器技術(shù)及軟件下載分享
分類導(dǎo)航

Mysql|Sql Server|Oracle|Redis|MongoDB|PostgreSQL|Sqlite|DB2|mariadb|Access|數(shù)據(jù)庫技術(shù)|

服務(wù)器之家 - 數(shù)據(jù)庫 - Redis - Redis教程(九):主從復(fù)制配置實例

Redis教程(九):主從復(fù)制配置實例

2019-10-24 17:58Redis教程網(wǎng) Redis

這篇文章主要介紹了Redis教程(九):主從復(fù)制配置實例,本文講解了Redis的Replication、Replication的工作原理、如何配置Replication、應(yīng)用示例等內(nèi)容,需要的朋友可以參考下

一、Redis的Replication:

    這里首先需要說明的是,在Redis中配置Master-Slave模式真是太簡單了。相信在閱讀完這篇Blog之后你也可以輕松做到。這里我們還是先列出一些理論性的知識,后面給出實際操作的案例。

    下面的列表清楚的解釋了Redis Replication的特點和優(yōu)勢。

    1). 同一個Master可以同步多個Slaves。
    2). Slave同樣可以接受其它Slaves的連接和同步請求,這樣可以有效的分載Master的同步壓力。因此我們可以將Redis的Replication架構(gòu)視為圖結(jié)構(gòu)。
    3). Master Server是以非阻塞的方式為Slaves提供服務(wù)。所以在Master-Slave同步期間,客戶端仍然可以提交查詢或修改請求。
    4). Slave Server同樣是以非阻塞的方式完成數(shù)據(jù)同步。在同步期間,如果有客戶端提交查詢請求,Redis則返回同步之前的數(shù)據(jù)。
    5). 為了分載Master的讀操作壓力,Slave服務(wù)器可以為客戶端提供只讀操作的服務(wù),寫服務(wù)仍然必須由Master來完成。即便如此,系統(tǒng)的伸縮性還是得到了很大的提高。
    6). Master可以將數(shù)據(jù)保存操作交給Slaves完成,從而避免了在Master中要有獨立的進(jìn)程來完成此操作。
    
二、Replication的工作原理:

    在Slave啟動并連接到Master之后,它將主動發(fā)送一個SYNC命令。此后Master將啟動后臺存盤進(jìn)程,同時收集所有接收到的用于修改數(shù)據(jù)集的命令,在后臺進(jìn)程執(zhí)行完畢后,Master將傳送整個數(shù)據(jù)庫文件到Slave,以完成一次完全同步。而Slave服務(wù)器在接收到數(shù)據(jù)庫文件數(shù)據(jù)之后將其存盤并加載到內(nèi)存中。此后,Master繼續(xù)將所有已經(jīng)收集到的修改命令,和新的修改命令依次傳送給Slaves,Slave將在本次執(zhí)行這些數(shù)據(jù)修改命令,從而達(dá)到最終的數(shù)據(jù)同步。
    如果Master和Slave之間的鏈接出現(xiàn)斷連現(xiàn)象,Slave可以自動重連Master,但是在連接成功之后,一次完全同步將被自動執(zhí)行。
    
三、如何配置Replication:

    見如下步驟:
    1). 同時啟動兩個Redis服務(wù)器,可以考慮在同一臺機(jī)器上啟動兩個Redis服務(wù)器,分別監(jiān)聽不同的端口,如6379和6380。
    2). 在Slave服務(wù)器上執(zhí)行一下命令:
 

復(fù)制代碼代碼如下:

    /> redis-cli -p 6380   #這里我們假設(shè)Slave的端口號是6380
    redis 127.0.0.1:6380> slaveof 127.0.0.1 6379 #我們假設(shè)Master和Slave在同一臺主機(jī),Master的端口為6379
    OK


    上面的方式只是保證了在執(zhí)行slaveof命令之后,redis_6380成為了redis_6379的slave,一旦服務(wù)(redis_6380)重新啟動之后,他們之間的復(fù)制關(guān)系將終止。
    如果希望長期保證這兩個服務(wù)器之間的Replication關(guān)系,可以在redis_6380的配置文件中做如下修改:
 

復(fù)制代碼代碼如下:

    /> cd /etc/redis  #切換Redis服務(wù)器配置文件所在的目錄。
    /> ls
    6379.conf  6380.conf
    /> vi 6380.conf
    將
    # slaveof <masterip> <masterport>
    改為
    slaveof 127.0.0.1 6379


    保存退出。
    這樣就可以保證Redis_6380服務(wù)程序在每次啟動后都會主動建立與Redis_6379的Replication連接了。
    
四、應(yīng)用示例:

 

    這里我們假設(shè)Master-Slave已經(jīng)建立。
 

復(fù)制代碼代碼如下:

    #啟動master服務(wù)器。
    [root@Stephen-PC redis]# redis-cli -p 6379
    redis 127.0.0.1:6379>
    #情況Master當(dāng)前數(shù)據(jù)庫中的所有Keys。
    redis 127.0.0.1:6379> flushdb
    OK
    #在Master中創(chuàng)建新的Keys作為測試數(shù)據(jù)。
    redis 127.0.0.1:6379> set mykey hello
    OK
    redis 127.0.0.1:6379> set mykey2 world
    OK
    #查看Master中存在哪些Keys。
    redis 127.0.0.1:6379> keys *
    1) "mykey"
    2) "mykey2"
    
    #啟動slave服務(wù)器。
    [root@Stephen-PC redis]# redis-cli -p 6380
    #查看Slave中的Keys是否和Master中一致,從結(jié)果看,他們是相等的。
    redis 127.0.0.1:6380> keys *
    1) "mykey"
    2) "mykey2"
    
    #在Master中刪除其中一個測試Key,并查看刪除后的結(jié)果。
    redis 127.0.0.1:6379> del mykey2
    (integer) 1
    redis 127.0.0.1:6379> keys *
    1) "mykey"
    
    #在Slave中查看是否mykey2也已經(jīng)在Slave中被刪除。
    redis 127.0.0.1:6380> keys *
    1) "mykey"

延伸 · 閱讀

精彩推薦
  • Redisredis實現(xiàn)排行榜功能

    redis實現(xiàn)排行榜功能

    排行榜在很多地方都能使用到,redis的zset可以很方便地用來實現(xiàn)排行榜功能,本文就來簡單的介紹一下如何使用,具有一定的參考價值,感興趣的小伙伴們...

    乘月歸5022021-08-05
  • Redisredis 交集、并集、差集的具體使用

    redis 交集、并集、差集的具體使用

    這篇文章主要介紹了redis 交集、并集、差集的具體使用,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友...

    xiaojin21cen10152021-07-27
  • RedisRedis的配置、啟動、操作和關(guān)閉方法

    Redis的配置、啟動、操作和關(guān)閉方法

    今天小編就為大家分享一篇Redis的配置、啟動、操作和關(guān)閉方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧 ...

    大道化簡5312019-11-14
  • RedisRedis如何實現(xiàn)數(shù)據(jù)庫讀寫分離詳解

    Redis如何實現(xiàn)數(shù)據(jù)庫讀寫分離詳解

    Redis的主從架構(gòu),能幫助我們實現(xiàn)讀多,寫少的情況,下面這篇文章主要給大家介紹了關(guān)于Redis如何實現(xiàn)數(shù)據(jù)庫讀寫分離的相關(guān)資料,文中通過示例代碼介紹...

    羅兵漂流記6092019-11-11
  • Redis詳解Redis復(fù)制原理

    詳解Redis復(fù)制原理

    與大多數(shù)db一樣,Redis也提供了復(fù)制機(jī)制,以滿足故障恢復(fù)和負(fù)載均衡等需求。復(fù)制也是Redis高可用的基礎(chǔ),哨兵和集群都是建立在復(fù)制基礎(chǔ)上實現(xiàn)高可用的...

    李留廣10222021-08-09
  • Redisredis中如何使用lua腳本讓你的靈活性提高5個逼格詳解

    redis中如何使用lua腳本讓你的靈活性提高5個逼格詳解

    這篇文章主要給大家介紹了關(guān)于redis中如何使用lua腳本讓你的靈活性提高5個逼格的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具...

    一線碼農(nóng)5812019-11-18
  • RedisRedis 事務(wù)知識點相關(guān)總結(jié)

    Redis 事務(wù)知識點相關(guān)總結(jié)

    這篇文章主要介紹了Redis 事務(wù)相關(guān)總結(jié),幫助大家更好的理解和學(xué)習(xí)使用Redis,感興趣的朋友可以了解下...

    AsiaYe8232021-07-28
  • RedisRedis全量復(fù)制與部分復(fù)制示例詳解

    Redis全量復(fù)制與部分復(fù)制示例詳解

    這篇文章主要給大家介紹了關(guān)于Redis全量復(fù)制與部分復(fù)制的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對大家學(xué)習(xí)或者使用Redis爬蟲具有一定的參考學(xué)習(xí)...

    豆子先生5052019-11-27
主站蜘蛛池模板: 免费黄色小说 | 好男人好资源在线观看免费 | 国产亚洲女在线线精品 | 国产精品久久免费 | 91yellow吧字幕网zmff7 | 99午夜高清在线视频在观看 | www.爱情岛论坛 | 成人国产网站v片免费观看 成人国产精品视频 | 暴露狂婷婷医院暴露tx | 色婷综合 | 强波多野结衣女教师 | 久久天天综合 | 欧美国产日本精品一区二区三区 | 日韩精品在线一区二区 | 国产高清在线观看 | 精品国产人妻国语 | 97国产蝌蚪视频在线观看 | 高h短篇辣肉各种姿势bl | 精品国产成a人在线观看 | 成人影院入口 | 免费视频一区二区 | 免费国产福利 | 人与善xuanwen在线400 | 7777色鬼xxxx欧美色夫 | 日韩久久网| 爱爱亚洲 | 女子监狱第二季未删减在线看 | 18亚洲chinese男男1069 | 亚洲高清国产拍精品动图 | 麻豆网站在线免费观看 | 青青草久 | 天天视频官网天天视频在线 | 色99视频| 狠狠干2017| 97导航| 四虎永久在线精品免费影视 | 国产成人精品一区二三区 | 欧美肥胖老妇做爰变态 | 欧美影院天天5g天天爽 | 俺来操 | 门房秦大爷在线阅读 |