前言
Redis是一種NoSQL的文檔數(shù)據(jù)庫,通過key-value的結(jié)構(gòu)存儲在內(nèi)存中,Redis讀的速度是110000次/s,寫的速度是81000次/s,性能很高,使用范圍也很廣。Redis是一個(gè)key-value存儲系統(tǒng)。和Memcached類似,為了保證效率,數(shù)據(jù)都是緩存在內(nèi)存中。區(qū)別的是redis會周期性的把更新的數(shù)據(jù)寫入磁盤或者把修改操作寫入追加的記錄文件,并且在此基礎(chǔ)上實(shí)現(xiàn)了master-slave(主從)同步。在部分場合可以對關(guān)系數(shù)據(jù)庫起到很好的補(bǔ)充作用。它提供了Java,C/C++(hiredis),C#,PHP,JavaScript,Perl,Object-C,Python,Ruby等客戶端,使用很方便。
下面用一個(gè)實(shí)例實(shí)現(xiàn)redis的讀寫分離,步驟如下:
第一步:下載redis
官網(wǎng)下載地址: https://redis.io/download
本地下載地址:https://www.jb51.net/softs/541181.html
![](http://img.jbzj.com/file_images/article/201803/20183795214384.png?20182795222)
下載最新的穩(wěn)定版,解壓拷貝到 ~/redis 中
![](http://img.jbzj.com/file_images/article/201803/20183795307334.png?20182795314)
編譯代碼:
第二步:配置redis
編輯redis.conf文件
拷貝redis.conf文件,改名為slave.conf,打開編輯
bind 127.0.0.1
port 6380
slaveof 127.0.0.1 6379
第三步:運(yùn)行服務(wù)
開啟【主服務(wù)】
開啟【從服務(wù)】
$ src/redis-server slave.conf
運(yùn)行【主服務(wù)】的客戶端
運(yùn)行【從服務(wù)】的客戶端
$ src/redis-cli -h 127.0.0.1 -p 6380
查看主從服務(wù)的關(guān)系
$ src/redis-cli info replication
![](http://img.jbzj.com/file_images/article/201803/20183795449505.png?20182795456)
第四步:測試服務(wù)器
下面實(shí)例演示:在主服務(wù)器中存儲一些數(shù)據(jù),然后在從服務(wù)器中查詢出來
![](http://img.jbzj.com/file_images/article/201803/20183795514055.png?20182795521)
可以看出,從服務(wù)器成功的獲取到了主服務(wù)器的備份數(shù)據(jù)。
假如我們在從服務(wù)器中保存數(shù)據(jù),看結(jié)果如何?
提示錯(cuò)誤:
(error) READONLY You can't write against a read only slave.
說明從服務(wù)器只能讀數(shù)據(jù),而不能寫入數(shù)據(jù)。
數(shù)據(jù)在【從服務(wù)器】里【讀】,在【主服務(wù)器】里【寫】。
這樣就實(shí)現(xiàn)了redis數(shù)據(jù)庫的讀寫分離功能。
總結(jié)
以上就是這篇文章的全部內(nèi)容了,希望本文的內(nèi)容對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,如果有疑問大家可以留言交流,謝謝大家對腳本之家的支持。
您可能感興趣的文章:- Redis主從實(shí)現(xiàn)讀寫分離
- redis客戶端實(shí)現(xiàn)高可用讀寫分離的方式詳解
- Redis讀寫分離搭建的完整步驟