【中间件】Redis监控以及指标

article/2025/8/14 9:36:51

一、监控指标

1.1、性能指标:Performance

Name

Description

latency

Redis响应一个请求的时间

instantaneous_ops_per_sec

平均每秒处理请求总数

hi rate(calculated)

缓存命中率(计算出来的

1.2、内存指标: Memory

Name

Description

used_memory

已使用内存

mem_fragmentation_ratio

内存碎片率

evicted_keys

由于最大内存限制被移除的key的数量

blocked_clients

由于BLPOP,BRPOP,or BRPOPLPUSH而备阻塞的客户端

1.3、基本活动指标:Basic activity

Name

Description

connected_clients

客户端连接数

conected_laves

slave数量

master_last_io_seconds_ago

最近一次主从交互之后的秒数

keyspace

数据库中的key值总数

1.4、持久性指标: Persistence

Name

Description

rdb_last_save_time

最后一次持久化保存磁盘的时间戳

rdb_changes_sice_last_save

自最后一次持久化以来数据库的更改数

1.5、错误指标:Error

Name

Description

rejected_connections

由于达到maxclient限制而被拒绝的连接数

keyspace_misses

key值查找失败(没有命中)次数

master_link_down_since_seconds

主从断开的持续时间(以秒为单位)

二、监控方式 

2.1、redis-benchmark

2.2、redis-stat

2.3、redis-faina

2.4、redislive

2.5、redis-cl

2.6、monitor

2.7、showlog

三、具体监控实例

3.1、redis性能测试命令

命令:redis-benchmark

./redis-benchmark -c 100 -n 5000

说明:100个连接,5000次请求对应的性能

3.2、性能监控

命令:redis-cli info | grep ops # 每秒操作数

3.3、内存监控

命令 :redis-cli info | grep used | grep human   


used_memory_human:90.51M  # 内存分配器从操作系统分配的内存总量
used_memory_rss_human:240.89M  #操作系统看到的内存占用,top命令看到的内存
used_memory_peak_human:8.59GM # redis内存消耗的峰值
used_memory_lua_human:37.00K   # lua脚本引擎占用的内存大小

 3.4、由于BLPOP,BRPOP,or BRPOPLPUSH而备阻塞的客户端

命令:./redis-cli -h 9.1.33.205 -a madp@redis info|grep blocked_clients

3.5、由于最大内存限制被移除的key的数量

命令:./redis-cli -h 9.1.33.205 -a madp@redis info|grep evicted_keys

  

 3.6、内存碎片率

./redis-cli -h 9.1.33.205 -a madp@redis info|grep mem_fragmentation_ratio

3.7、已使用内存

./redis-cli -h 9.1.33.205 -a madp@redis info|grep used_memory

 

3.8、基本活动指标

        redis连接了多少客户端 通过观察其数量可以确认是否存在意料之外的连接。如果发现数量不对劲,就可以使用lcient list指令列出所有的客户端链接地址来确定源头。 

命令: ./redis-cli info | grep connected_clients

connected_clients:1

[root@CombCloud-2020110836 src]# ./redis-cli info | grep connected
connected_clients:1   # 客户端连接数量
connected_slaves:1   # slave连接数量

3.9、持久性指标

命令: ./redis-cli info | grep rdb_last_save_time

rdb_last_save_time:1591876204  # 最后一次持久化保存磁盘的时间戳
[root@CombCloud-2020110836 src]# ./redis-cli info | grep rdb_changes_since_last_save
rdb_changes_since_last_save:0   # 自最后一次持久化以来数据库的更改数

3.10、错误指标

        由于超出最大连接数限制而被拒绝的客户端连接次数,如果这个数字很大,则意味着服务器的最大连接数设置得过低,需要调整maxclients 

命令: ./redis-cli info | grep connected_clients

[root@CombCloud-2020110836 src]# ./redis-cli info | grep connected_clients
connected_clients:1

 3.11、key值查找失败(没有命中)次数,出现多次可能是被攻击

命令:./redis-cli info | grep keyspace

[root@CombCloud-2020110836 src]# ./redis-cli info | grep keyspace
keyspace_misses:0  

3.12、主从断开的持续时间(以秒为单位)

命令:./redis-cli info | grep rdb_changes_since_last_save

[root@CombCloud-2020110836 src]# ./redis-cli info | grep rdb_changes_since_last_save
rdb_changes_since_last_save:0  

3.13、复制积压缓冲区如果设置得太小,会导致里面的指令被覆盖掉找不到偏移量,从而触发全量同步

命令: ./redis-cli info | grep backlog_size

[root@CombCloud-2020110836 src]# ./redis-cli info | grep backlog_size
repl_backlog_size:1048576

 3.14、 通过查看sync_partial_err变量的次数来决定是否需要扩大积压缓冲区,它表示主从半同步复制失败的次数

命令:./redis-cli info | grep sync_partial_err

[root@CombCloud-2020110836 src]# ./redis-cli info | grep sync_partial_err
sync_partial_err:1

四、相关参数配置和说明

4.1、慢日志相关的

        4.1.1、  get:获取慢查询日志

       4.1.2、 len:获取慢查询日志条目数

       4.13、 reset:重置慢查询日志

        slowlog-log-slower-than 1000 # 设置慢查询的时间下线,单位:微秒
        slowlog-max-len 100 # 设置慢查询命令对应的日志显示长度,单位:命令数

4.2、终端info命令使用

        info(可以一次性获取所有的信息,也可以按块获取信息)

        ./redis-cli info 按块获取信息 | grep 需要过滤的参数
        ./redis-cli info stats | grep ops

        4.2.1、server:服务器运行的环境参数

        4.2.2、clients:客户端相关信息

        4.2.3、memory:服务器运行内存统计数据

        4.2.4、persistence:持久化信息

        4.2.5、stats:通用统计数据

        4.2.6、Replication:主从复制相关信息

        4.2.7、CPU:CPU使用情况

         4.2.8、cluster:集群信息

         4.2.9、Keypass:键值对统计数量信息

 

 


http://chatgpt.dhexx.cn/article/HgPRMfWm.shtml

相关文章

Redis监控和预警

1.摘要 本人从事Java Web开发,在项目开发中会用到很多中间件,本文主要介绍Redis监控的一点心得和使用,公司DBA也有相应的监控,但是我们的业务比较重要,想做一个备份监控,对Redis监控需要做监控和预警&#…

如何完善Redis监控告警?

本文字数:3940字 预计阅读时间:20分钟 一、背景二、监控指标分类三、监控指标说明四、总结 一、背景 Redis监控告警实践是基于开发CacheCloud云平台过程中不断实践和总结出来,随着Redis实例规模不断变大,会遇到各种各样的问题&…

redis集群监控

通过Prometheus监控redis集群 一、promethus安装 下载地址: https://github.com/prometheus/prometheus/releases 1、下载 wget https://github.com/prometheus/prometheus/releases/download/v2.32.1/prometheus-2.32.1.linux-amd64.tar.gz 2、安装、配置 ta…

Linux安装Redis监控工具RedisInsight

文章目录 1.简介2.安装RedisInsight2.1下载RedisInsight2.2配置RedisInsight2.3运行RedisInsight 3.使用RedisInsight3.1添加Redis3.1.1添加单机Redis 3.2自动发现Redis3.3以编程方式添加Redis3.4性能指标3.5集群管理3.6命令行3.7内存分析3.7.1在实例上运行内存分析3.7.2内存概…

RedisInsight:Redis监控工具部署(linux)

RedisInsight 部署流程 简介一、下载二、安装1.准备工作2.配置及介绍3.运行4.访问 总结 简介 RedisInsight提供以下功能: 易于使用基于浏览器的界面来搜索键、查看和编辑数据唯一支持Redis集群的GUI工具支持基于SSL/TLS的连接运行内存分析 一、下载 下载地址: R…

redis监控工具

redis-monitor 项目github地址:https://github.com/NetEaseGame/redis-monitor (看作者名称,应该是华科的) # 安装 pip install redis-monitor#初始化redis-monitor init#启动 nohup redis-monitor start > redis-monitor.l…

Redis性能监控

redis_exporter prometheus grafana监控Redis服务指标 1.redis_exporter2.prometheus3.grafana 本文使用 redis_exporter prometheus grafana 实现对Redis服务进行监控,原因:成本低,人工干预少,直接下载对应的组件,只需添加配置即可互相通信,可视化指标也比较全面。 下面是在…

性能测试:Redis性能监控(redis-stat工具)

redis 监控 redis 监控一共有两种方式,一种是通过info命令,还有一种是使用redis-stat工具。两者其实本质是一样的,不过一个是命令行的模式下查看监控数据,而另外一种是图形化页面查看。但是实际上,我们性能测试主要更…

Redis监控利器---Redis State

强烈推荐一个大神的人工智能的教程:http://www.captainai.net/zhanghan 【前言】 在之前的博文《Redis百万级别数据迁移》中分享我们系统为降低服务器成本,从亚马逊云迁至阿里云的一次生产迁移过程中Redis部分迁移;去年迁移Redis时数据量500…

【Redis监控】

方法1:redis-stat 下载地址:https://github.com/junegunn/redis-stat 可以直接下载安装jar包 Usage usage: redis-stat [HOST[:PORT][/PASS] ...] [INTERVAL [COUNT]] -a, --authPASSWORD Password -v, --verbose …

redis监控

上篇我们将redis安装好了,但是自己搭建的服务监控起来比较麻烦,我们每次都需要跑到redis-cli使用info命令查看redis的状态。 所以我们需要一个可视化的redis监控工具,这里我们为了方便使用docker进行安装,毕竟依赖这个东西是要搞…

性能测试之Redis和Nginx 性能监控

redis 监控 redis 监控一共有两种方式,一种是通过info命令,还有一种是使用redis-stat工具。两者其实本质是一样的,不过一个是命令行的模式下查看监控数据,而另外一种是图形化页面查看。但是实际上,我们性能测试主要更…

redis基础监控

redis监控 redis server 监控: redis存活判断:ping判断,如果指定时间返回PONG表示存活,否则redis不能响应请求,可能阻塞或死亡 机器端口检查:nc 判断端口是否正常。 连接数:connected_clients …

【23种设计模式】设计模式介绍与分类

前言 本文为 【23种设计模式】设计模式介绍与分类 相关知识介绍,下边将对什么是设计模式,设计模式的分类与23种设计模式的关键点进行详尽介绍~ 📌博主主页:小新要变强 的主页 👉Java全栈学习路线可参考:【…

Java之美[从菜鸟到高手演变]之设计模式

设计模式(Design Patterns) ——可复用面向对象软件的基础 设计模式(Design pattern)是一套被反复使用、多数人知晓的、经过分类编目的、代码设计经验的总结。使用设计模式是为了可重用代码、让代码更容易被他人理解、保证代码可…

23 种设计模式详解(全23种)

设计模式的分类 总体来说设计模式分为三大类: 创建型模式,共五种:工厂方法模式、抽象工厂模式、单例模式、建造者模式、原型模式。 结构型模式,共七种:适配器模式、装饰器模式、代理模式、外观模式、桥接模式、组合…

23种设计模式汇总整理

设计模式分为三大类: 创建型模式,共五种:工厂方法模式、抽象工厂模式、单例模式、建造者模式、原型模式 结构型模式,共七种:适配器模式、装饰者模式、代理模式、外观模式、桥接模式、组合模式、享元模式。 行为型模…

设计模式的作用

这几天一边搞论文,一边学设计模式。真的是搞得我头昏脑胀,隐约明白设计模式是一种规范,一种体系。接到一个棘手或大型的项目,通过经验丰富或者领导的拆解,拆成一个个小的项目模块。然后让其他人去实现。会有一些约定俗…

设计模式概述 以及 23种设计模式的介绍

设计模式概述(Design pattern): 设计模式:代表了最佳的实践,通常被有经验的面向对象的软件开发人员所采用。设计模式是软件开发人员在软件开发过程中面临的一般问题的解决方案。这些解决方案是众多软件开发人员经过相…

设计模式(一)设计模式的分类与区别

文章目录 一、设计模式的六大原则1.1 开闭原则(总原则)1.2 里氏替换原则1.3 依赖倒置原则1.4 单一职责原则1.5 接口隔离原则1.6 迪米特法则1.7 合成复用原则 二、设计模式的三大类别2.1 创建型模式2.2 结构型模式2.3 行为型模式 三、设计模式的使用3.1 设…