美文网首页
redis读写分离

redis读写分离

作者: 裂开的汤圆 | 来源:发表于2020-07-06 15:30 被阅读0次

什么是读写分离

主机数据更新后根据配置和策略,自动同步到备机的master/slaver机制,master以写为主,slave以读为主

配置从机

配置从机的方式有两种,一种是通过slaveof命令进行配置,另一种是通过配置文件

1.使用slaveof命令配置当前机器为从机

slaveof 主机ip地址 主机redis端口号
slaveof 127.0.0.1 6379

2.通过配置文件配置当前主机为从机,在配置文件中添加如下内容

# 当本机为从机时,设置master服务的IP地址及端口,在redis启动时,它会自动从master进行数据同步
slaveof <masterip> <masterport>

# 当master服务设置了密码保护时,slav服务连接master的密码
masterauth <master-password>

# 设置master连接密码,slave可省略
requirepass 123456              

当配置从机后,从机会从主机中复制所有的数据(全量复制)。

从机为只读权限,无法写入

哨兵模式(sentinel)

当未配置哨兵时,主机挂掉,所有从机任然保持从机的身份,而不会自动选取一个成为主机。主机恢复后,从机将会自动连接上主机(心跳机制)。

当配置哨兵后,主机挂掉,从机进行投票,票数最多的自动成为主机。当原主机恢复后,会接入到现有的主从关系中,自动成为从机

如何开启哨兵模式

  • 1.新建一个sentinel.conf文件
  • 2.在该配置文件中添加如下内容
daemonize yes
logfile "/usr/local/redis/sentinel.log"
dir "/usr/local/redis/sentinel"                 #sentinel工作目录
sentinel monitor mymaster 192.168.30.128 6379 2                 #判断master失效至少需要2个sentinel同意,建议设置为n/2+1,n为sentinel个数
sentinel auth-pass mymaster 123456
sentinel down-after-milliseconds mymaster 30000                 #判断master主观下线时间,默认30s

  • 3.使用命令启动哨兵,redis-sentinel sentinel.conf

相关文章

网友评论

      本文标题:redis读写分离

      本文链接:https://www.haomeiwen.com/subject/hrdxqktx.html