環(huán)境:
redis_M 172.16.0.137
站在用戶的角度思考問題,與客戶深入溝通,找到鹿寨網(wǎng)站設(shè)計與鹿寨網(wǎng)站推廣的解決方案,憑借多年的經(jīng)驗,讓設(shè)計與互聯(lián)網(wǎng)技術(shù)結(jié)合,創(chuàng)造個性化、用戶體驗好的作品,建站類型包括:成都網(wǎng)站制作、網(wǎng)站建設(shè)、外貿(mào)網(wǎng)站建設(shè)、企業(yè)官網(wǎng)、英文網(wǎng)站、手機端網(wǎng)站、網(wǎng)站推廣、申請域名、雅安服務(wù)器托管、企業(yè)郵箱。業(yè)務(wù)覆蓋鹿寨地區(qū)。
redis_S 172.16.0.138
系統(tǒng):centos6.7
1、在redis_M 172.16.0.137 、redis_S 172.16.0.138搭建單機redis
2、修改配置參數(shù)redis.conf
主要修改4個參數(shù):
port
logfile
slaveof (只在從庫修改)
pidfile
daemonize(配置以daemon方式運行)
------------------------------------------------------------------------------------------
修改redis_M 172.16.0.137 redis.conf:
port 6379
pidfile /var/run/redis.pid
# slaveof
logfile "/var/log/redis/redis.log"
daemonize yes
修改redis_S 172.16.0.138 redis.conf:
port 6380
pidfile /var/run/redis.pid
slaveof 172.16.0.137 6379
logfile "/var/log/redis/redis.log"
daemonize yes
----------------------------------------------------------------------------------------------
設(shè)置主從同步
1、在redis主服務(wù)器上的redis.conf中修改bind字段,將
bind 127.0.0.1
修改為
bind 0.0.0.0
又或者直接注釋掉bind字段
# bind 127.0.0.1
2、設(shè)置主從同步密碼 在配置文件redis.conf修改
主從服務(wù)器設(shè)置密碼:
requirepass some34QA
主從從服務(wù)器配置添加上密碼:
masterauth some34QA
開啟從服務(wù)器只讀模式(默認開啟)
slave-read-only yes
3、設(shè)置主從持久化:RDB快照持久化 修改redis.conf
mkdir /var/data/redis -p
save 900 1
save 300 10
save 60 10000
stop-writes-on-bgsave-error yes
rdbcompression yes (壓縮)
rdbchecksum yes
dbfilename dump.rdb
dir /var/data/redis
http://www.voidcn.com/blog/aitangyong/article/p-6114064.html
【1. redis調(diào)用系統(tǒng)函數(shù)fork() ,創(chuàng)建一個子進程?!?/p>
【2.子進程將數(shù)據(jù)集寫入到一個臨時 RDB 文件中?!?/p>
【3.當子進程完成對臨時RDB文件的寫入時,redis 用新的臨時RDB 文件替換原來的RDB 文件,并刪除舊的 RDB 文件?!?/p>
4、設(shè)置主從持久化:AOF持久化 修改redis.conf
appendonly yes
appendfilename "appendonly.aof"
appendfsync everysec
no-appendfsync-on-rewrite no
auto-aof-rewrite-percentage 100
auto-aof-rewrite-min-size 64mb
http://www.jianshu.com/p/bedec93e5a7b
AOF和RDB對比:
AOF更安全,可將數(shù)據(jù)及時同步到文件中,但需要較多的磁盤IO,AOF文件尺寸較大,文件內(nèi)容恢復(fù)相對較慢, 也更完整。
RDB持久化,安全性較差,它是正常時期數(shù)據(jù)備份及 master-slave數(shù)據(jù)同步的最佳手段,文件尺寸較小,恢復(fù)數(shù)度較快。
最大內(nèi)存配置以及內(nèi)存回收策略:(安裝具體業(yè)務(wù)需要調(diào)整,此次為做調(diào)整)
maxmemory 12G (建議設(shè)置服務(wù)器內(nèi)存的75%) 當內(nèi)存達到限制時,Redis 具體的回收策略是通過 maxmemory-policy 配置項配置的。
maxmemory 0 (沒有限制,當存儲數(shù)據(jù)達到限制時,Redis 會根據(jù)情形選擇不同策略,或者返回errors(這樣會導致浪費更多的內(nèi)存),或者清除一些舊數(shù)據(jù)回收內(nèi)存來添加新數(shù)據(jù))
maxmemory-policy 配置項:
noenviction:不清除數(shù)據(jù),只是返回錯誤,這樣會導致浪費掉更多的內(nèi)存,對大多數(shù)寫命令(DEL 命令和其他的少數(shù)命令例外)
allkeys-lru:從所有的數(shù)據(jù)集(server.db[i].dict)中挑選最近最少使用的數(shù)據(jù)淘汰,以供新數(shù)據(jù)使用
volatile-lru:從已設(shè)置過期時間的數(shù)據(jù)集(server.db[i].expires)中挑選最近最少使用的數(shù)據(jù)淘汰,以供新數(shù)據(jù)使用
allkeys-random:從所有數(shù)據(jù)集(server.db[i].dict)中任意選擇數(shù)據(jù)淘汰,以供新數(shù)據(jù)使用
volatile-random:從已設(shè)置過期時間的數(shù)據(jù)集(server.db[i].expires)中任意選擇數(shù)據(jù)淘汰,以供新數(shù)據(jù)使用
volatile-ttl:從已設(shè)置過期時間的數(shù)據(jù)集(server.db[i].expires)中挑選將要過期的數(shù)據(jù)淘汰,以供新數(shù)據(jù)使用
-----------------------------------------------------------------------------------------------------------------------------------------
redis雙節(jié)點主從切換: