Tag Archives: redis

监控 redis warn 级别日志信息

By | 2018-05-11

介绍 我们现有的 redis 监控包括 zabbix, cacti 以及定制的 redis-sentinel-notify 脚本. 在不进行 sentinel 切换的前提下, 很难发现 redis 是否出现了其它错误, 比如连接占满, 同步异常, 后台线程中断等. redis 的日志级别提供了更为详细的诊断的信息. 从 redis 源代码中搜索 redisLog 函数的 REDIS_WARNING 相关的参数即可管中窥豹的了解到 warn 级别提供的大多都是有用的诊断信息, 基于此我们可以通过 warn 信息来了解更精确的诊断信息. redis 日志级别 以 redis-4.0.8 版本为例说明, server.h 文件中其包含系统的 syslog.h 头文件, 可以看到 redis 日志级别遵循 syslog 的级别信息, 不过只用到了以下 4 个级别: /usr/include/sys/syslog.h 文件 …. #define LOG_WARNING 4… Read More »

redis 复制功能说明

By | 2015-01-26

redis 复制功能说明 一. 概述 redis的复制功能可以分为同步和命令这两阶段操作, 同步操作使得 slave 的状态更新到 master 当前所在的状态, 命令传播阶段则实现增量的状态更新, 使得 master 和 slave 达到一致的状态. 在复制功能的实现中, 同步即对应着初始复制阶段, 命令传播对应着增量复制阶段. 在 client 向 slave 发送 slaveof 命令时, 会使得 slave 开始复制 master, 首先 slave 需要执行初始复制, 即上述的同步阶段, 同步过程的通信流程如下: 1. slave 发送 SYNC 给 master; 2. master 收到 SYNC 后执行 BGSAVE, 生成 RDB 文件, 且使用缓冲区记录从当前开始执行的所有 write 操作; 3. master… Read More »