单机版redis,存在读写瓶颈的问题(11万次/秒的读取,8万次/秒的写入)。
因此可以通过主从配置,(一台主节点可以读和写,若干台从节点只可以读)来提高redis的数据处理能力。
redis的主从配置说明:
1.Redis的主从复制是异步的,但可以将主机配置为:当从机少于一定数量时,则停止主机的写入操作。
2.如果从节点断开链接的时间很短,则可以进行部分数据的同步。用户可以根据自己的需要,设置replication backlog的大小。
3.复制是自动的,不需要用户干预。每隔一段时间,从节点就会连接一次主节点,并进行数据的同步。
具体设置:
假设redis主节点IP:192.168.0.1,端口6379
从节点1的IP:192.168.0.2,端口6379
从节点2的IP:192.168.0.3,端口6379
在两台从节点,需要在配置文件中,进行如下设置
slaveof <masterip> <masterport> #redis主节点的IP 端口
masterauth <master-password> #从节点输入主节点的密码
slave-serve-stale-data yes
slave-read-only yes #从节点是只读模式
哨兵机制
主节点机器,添加sentinel.conf文件,内容如下:
daemonize yes #哨兵在后台启动 sentinel monitor master localhost 6379 2 #指定主节点的ip和端口 sentinel down-after-milliseconds master 10000 #哨兵多久监听一次redis架构
从节点机器,添加sentinel.conf文件内容如下:
daemonize yes #哨兵在后台启动
sentinel monitor master [主节点ip] [主节点端口] 2 #指定主节点的ip和端口
sentinel down-after-milliseconds master 10000 #哨兵多久监听一次redis架构
配置好之后,使用如下命令开启哨兵:(redis服务要先启动,主节点和从节点都要执行)
redis-sentinel [sentiel.conf文件位置]