環(huán)境:
redis_M 172.16.0.137
redis_S 172.16.0.138
系統(tǒng):centos6.7
1、在redis_M 172.16.0.137 、redis_S 172.16.0.138搭建單機(jī)redis
2、修改配置參數(shù)redis.conf
主要修改4個(gè)參數(shù):
port
logfile
slaveof (只在從庫(kù)修改)
pidfile
daemonize(配置以daemon方式運(yùn)行)
------------------------------------------------------------------------------------------
修改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
開(kāi)啟從服務(wù)器只讀模式(默認(rèn)開(kāi)啟)
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)建一個(gè)子進(jìn)程。】
【2.子進(jìn)程將數(shù)據(jù)集寫(xiě)入到一個(gè)臨時(shí) RDB 文件中?!?/p>
【3.當(dāng)子進(jìn)程完成對(duì)臨時(shí)RDB文件的寫(xiě)入時(shí),redis 用新的臨時(shí)RDB 文件替換原來(lái)的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對(duì)比:
AOF更安全,可將數(shù)據(jù)及時(shí)同步到文件中,但需要較多的磁盤(pán)IO,AOF文件尺寸較大,文件內(nèi)容恢復(fù)相對(duì)較慢, 也更完整。
RDB持久化,安全性較差,它是正常時(shí)期數(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%) 當(dāng)內(nèi)存達(dá)到限制時(shí),Redis 具體的回收策略是通過(guò) maxmemory-policy 配置項(xiàng)配置的。
maxmemory 0 (沒(méi)有限制,當(dāng)存儲(chǔ)數(shù)據(jù)達(dá)到限制時(shí),Redis 會(huì)根據(jù)情形選擇不同策略,或者返回errors(這樣會(huì)導(dǎo)致浪費(fèi)更多的內(nèi)存),或者清除一些舊數(shù)據(jù)回收內(nèi)存來(lái)添加新數(shù)據(jù))
maxmemory-policy 配置項(xiàng):
noenviction:不清除數(shù)據(jù),只是返回錯(cuò)誤,這樣會(huì)導(dǎo)致浪費(fèi)掉更多的內(nèi)存,對(duì)大多數(shù)寫(xiě)命令(DEL 命令和其他的少數(shù)命令例外)
allkeys-lru:從所有的數(shù)據(jù)集(server.db[i].dict)中挑選最近最少使用的數(shù)據(jù)淘汰,以供新數(shù)據(jù)使用
volatile-lru:從已設(shè)置過(guò)期時(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è)置過(guò)期時(shí)間的數(shù)據(jù)集(server.db[i].expires)中任意選擇數(shù)據(jù)淘汰,以供新數(shù)據(jù)使用
volatile-ttl:從已設(shè)置過(guò)期時(shí)間的數(shù)據(jù)集(server.db[i].expires)中挑選將要過(guò)期的數(shù)據(jù)淘汰,以供新數(shù)據(jù)使用
-----------------------------------------------------------------------------------------------------------------------------------------
redis雙節(jié)點(diǎn)主從切換:
另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)cdcxhl.cn,海內(nèi)外云服務(wù)器15元起步,三天無(wú)理由+7*72小時(shí)售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國(guó)服務(wù)器、虛擬主機(jī)、免備案服務(wù)器”等云主機(jī)租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡(jiǎn)單易用、服務(wù)可用性高、性價(jià)比高”等特點(diǎn)與優(yōu)勢(shì),專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場(chǎng)景需求。