Redis配置主從架構,實現讀寫分離

來源:互聯網
上載者:User

Redis的主從架構,能協助我們實現讀多,寫少的情況,下面配置Redis架構,很簡單。

準備環境 vmware + rhel-server-7.0(101,102,103)+redis-3.2.0

1、在192.168.137.101安裝好redis3.2.0,我安裝的目錄如下

redis的安裝參考http://blog.csdn.net/yingxiake/article/details/51469364

2、通過ssh將redis檔案夾copy到102和103的linux上

scp -rf redis/ root@192.168.137.102:/home/redisscp -rf redis/ root@192.168.137.103:/home/redis

102,103的redis目錄如下,說明copy成功

3、配置master和slave關係,有如下倆種方式

a) 在redis.conf中設定slaveof,永久性

slaveof <masterip> <masterport>

b)使用redis-cli用戶端設定redis服務,暫時,redis重啟失效

slaveof <masterip> <masterport>

在102和103的conf/redis.conf的設定檔配置為101的slave關係

master的密碼可以直接在設定檔裡面配置

4、查看設定情況,使用如下命令

info replication

101的主從關係,可以看slaves的串連數還有ip地址,連接埠

102,103的主從關係,可以看master]的ip地址,連接埠

若發現配置沒有問題,但是master_link_status一直是down,connected_slaves一直是0,尋找下,是不是三個ip之間不能拼通,如果能拼通,查看下連接埠是否能拼通,可以在windows上通過telnet

telnet 192.168.137.101 6379

如果發現不能拼通,修改下設定檔,將

bind 127.0.0.1

注釋掉,重啟服務,再試試,參考下http://blog.csdn.net/yingxiake/article/details/51472810

5、測試是否資料同步

在master設定一個key和value

在101和102上分別get資料

說明資料同步成功,接下來把102down掉,再重啟,然後get資料

說明資料恢複成功,另外也說明在主從結構中,slave不能寫資料

主從複製的步驟:

1、從伺服器開始連結主伺服器時,會向主伺服器發送一個 SYNC 命令
2、主服務接收到命令之後,執行 BGSAVE,非同步將寫命令儲存到一個緩衝區裡面
3、主伺服器執行完BGSAVE之後,就.rdb 檔案(BOF的持久化檔案)發送給從伺服器,從伺服器從該檔案恢複資料到記憶體中
4、主伺服器還會以 Redis 命令協議的格式, 將寫命令緩衝區中積累的所有內容都發送給從伺服器,從伺服器通過執行命令將資料恢複到記憶體中

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.