27.Redis哨兵架构

Redis哨兵高可用架构

Sentinel(哨兵)是一种特殊的 Redis 服务,其主要功能并非提供常规的读写服务,而是专门用于监控 Redis 实例节点。

1.在哨兵架构下,客户端(client 端)首次会从哨兵处找出 Redis 的主节点。

2.客户端便直接访问 Redis 的主节点,并非每次都需通过哨兵代理来访问 Redis 的主节点。

3.当 Redis 的主节点发生变化时,哨兵能够在第一时间感知到这一变化,并且会立即将新的 Redis 主节点通知给客户端(这里需要注意的是,Redis 的客户端一般都实现了订阅功能,用于订阅哨兵发布的节点变动消息)。这样的设计机制确保了 Redis 集群在主节点切换等情况下,客户端能够及时获取最新的主节点信息,从而保证系统的高效运行和数据的一致性。

redis哨兵架构搭建步骤:

cpp 复制代码
1、复制一份sentinel.conf文件
cp sentinel.conf sentinel‐26379.conf
2、将相关配置修改为如下值:
port 26379
daemonize yes
pidfile "/var/run/redis‐sentinel‐26379.pid"
logfile "26379.log"
dir "/usr/local/redis‐5.0.3/data"
# sentinel monitor <master-name><ip><redis-port><quorum>
# quorum是一个数字,指明当有多少个sentinel认为一个master失效时(值一般为:sentinel总数/2 + 1),
master才算真正失效
sentinel monitor mymaster 192.168.0.60 6379 2

3、启动sentinel哨兵实例
src/redis‐sentinel sentinel‐26379.conf
4、查看sentinel的info信息
src/redis‐cli ‐p 26379
127.0.0.1:26379>info
可以看到Sentinel的info里已经识别出了redis的主从
5、可以自己再配置两个sentinel,端口26380和26381,注意上述配置文件里的对应数字都要修改
相关推荐
w-w0w-w6 小时前
SQL注入
网络·数据库·sql
tianyuanwo6 小时前
NetBox 数据库详解:当“关系型数据库”被装进一个网络运维的领域模型里
运维·数据库·netbox
一条泥憨鱼6 小时前
【计算机网络】短连接、长连接与连接池:从 TCP 握手到池化复用的完整链路
网络·数据库·网络协议·tcp/ip·计算机网络
我不会起名字3226 小时前
Redis 从 0 到 1(十七):订单 30 分钟不支付自动关闭——ZSet 延迟队列 Go 实现
redis·go·延迟队列·zset·订单
IvorySQL6 小时前
深入 PostgreSQL WAL:从崩溃恢复到逻辑复制
数据库·postgresql
ZhengEnCi7 小时前
GPT-6 Astra 爆改 Qwen 权重真有那么神吗:权重空间编程 0.016% 参数的真相
算法·架构
幽灵诶7 小时前
Mysql(基于测试的学习)
数据库·mysql
砚底藏山河7 小时前
python量化自定义周期 K 线合成
java·开发语言·数据库·python·金融
利威尔xu8 小时前
Go IM 源码实战(13):30 个会话只有 2 个红点,未读数错在三条路径
redis·后端·微服务·面试·golang