redis 的主从模式哨兵模式

原理理解

1,哨兵的作用就是检测redis主服务的状态,如果主服务器挂了,从服务就自动切换为主服务器,变为master。哨兵是一个独立的进程,作为进程,它会独立运行。其原理是哨兵通过发送命令,等待Redis服务器响应,从而监控运行的多个Redis实例。

2,一般来说,主服务可以写入,从服务器只能读。因为是从服务器向主服务器同步数据,如果从服务器可以写入数据的话,两台服务器的数据就不会同步了。但是可通过 replica-read-only 参数修改

3,从节点只能有一个主节点,当再次指定主节点时,从节点会删除旧主节点的数据。

4,从节点去掉主节点后,从节点会重新变成主节点。 命令:slaveof no one 改变从节点状态,slaveof host port 指定主服务实例  。#slaveof本身是异步命令,执行slaveof命令时,节点只保存主节点信息后返回

5,主节点默认是立即将写命令同步到从节点,当网络较差时可开启 repl-disable-tcp-nodelay 参数,这样redis会合并tcp包,从而减少带宽占用。
6,为了安全,主节点可配置 requirepass 参数,这样从节点在连接的时候就需要密码验证。

【主配置文件参数】redis.conf

#bind 127.0.0.1 屏蔽这段,表示允许远程访问
daemonize yes #默认为no,修改为yes,表示启动时在后台运行
requirepass 123456 #设置下密码,123456为密码

 

【从服务器文件参数】redis.conf

slaveof 39.96.203.220 6379 #表示连接主服务器
masterauth password #主服务器密码,如果主服务有密码的话,这里一定要配置

 

【哨兵文件配置】sentinel.conf(一般配置在从节点上)

复制代码
1 # 禁止保护模式
2 protected-mode no
3 # 配置监听的主服务器,这里sentinel monitor代表监控,mymaster代表服务器的名称,可以自定义,192.168.11.128代表监控的主服务器,6379代表端口,2代表只有两个或两个以上的哨兵认为主服务器不可用的时候,才会进行failover操作。
4 sentinel monitor mymaster 192.168.11.128 6379 2
5 # sentinel author-pass定义服务的密码,mymaster是服务名称,123456是Redis服务器密码
6 # sentinel auth-pass <master-name> <password>
7 sentinel auth-pass mymaster 123456
复制代码

 

posted @   风风羊  阅读(1347)  评论(0编辑  收藏  举报
编辑推荐:
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
阅读排行:
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通
点击右上角即可分享
微信分享提示