redis哨兵模式搭建

先搭建主从结构

当需要运行多个Redis实例时,可以通过为每个实例使用不同的配置文件的方式来实现。

复制redis目录下的redis.conf 文件将其重命名为redis6380.confredis6381.conf,或者将其放到单独文件夹中,这里为了偷懒,简单实现一下选择直接将其复制到与redis.conf同一目录下。然后修改刚刚复制的配置文件。

命令格式:info replication

作用:检查redis节点的状态信息

  • 节点划分策略:根据业务需要要求。
    • 示例:以6379为主机、6380、6381为从机
  • 实现主从挂载
    • 方法通过主从挂载命令完成。
    • 主从挂载命令:slaveof host port
    • 实现过程:
      • 第一步:进入从机客户端,执行主从挂载命令

主从挂载特点:

  • 一个主机可以有多个从机。
  • 一个从机只有一个主机。从机多次执行slaveof命令,每次执行都是更换主机,而不是从机挂载。
  • 主机可以知道所有从机信息、而从机也知道所属主机的信息,而同属一个主机的多台从机之间互不知道。
  • 主从之间的通信只在主--从之间进行,而从--从之间没有通信。
  • 从机只接受主机的写操作,其它的写操作一律不接受;从机可接受所有的读操作。

哨兵机制

  • 原理:
    • 当哨兵工作时会连接redis主机,并通过主机,获取所有从机的信息。
    • 监控主机运行状况
      • 通过心跳检测(ping<---->pong)机制,定时向主机发ping命令,当达到规定次数仍然没有得到主机的pong结果,认定主机宕机。
    • 通过随机算法将从所有从机选举出新主机。
    • 负责剩下的从机重新挂载到新主机上。
    • 当主机恢复后,会做为从机挂载到当前主机上。
  • 哨兵机制的实现
    • 编辑redis.conf文件
    • 编辑sentinel.conf文件
      • 位置:

将此配置文件复制到哨兵的工作目录。

基础配置方法:

另外注意:如果主机有密码的情况下需要找到下面这行配置取消注释并填上主机的密码

复制代码
# masterauth <master-password>
  • 哨兵启动
    • 哨兵的启动
      • 前置条件:sentinel.conf
      • 启动命令:redis-sentinel sentinel.conf
      • 示例:
相关推荐
Kagol1 天前
macOS 和 Windows 操作系统下如何安装和启动 MySQL / Redis 数据库
redis·后端·mysql
hzulwy1 天前
Redis常用的数据结构及其使用场景
数据库·redis
ashane13141 天前
Redis 哨兵集群(Sentinel)与 Cluster 集群对比
redis
Y第五个季节1 天前
Redis - HyperLogLog
数据库·redis·缓存
Justice link1 天前
企业级NoSql数据库Redis集群
数据库·redis·缓存
爱的叹息1 天前
Spring Boot 集成Redis 的Lua脚本详解
spring boot·redis·lua
morris1312 天前
【redis】redis实现分布式锁
数据库·redis·缓存·分布式锁
爱的叹息2 天前
spring boot集成reids的 RedisTemplate 序列化器详细对比(官方及非官方)
redis
weitinting2 天前
Ali linux 通过yum安装redis
linux·redis
纪元A梦2 天前
Redis最佳实践——首页推荐与商品列表缓存详解
数据库·redis·缓存