1.摘要

本人从事Java Web开发,在项目开发中会用到很多中间件,本文主要介绍Redis监控的一点心得和使用,公司DBA也有相应的监控,但是我们的业务比较重要,想做一个备份监控,对Redis监控需要做监控和预警,首先需要有数据,数据采集之前要知道自己需要监控哪些指标,监控Redis的作用:(1)定时监控MySQL的健康状况,能够及时发现问题;(2)根据一些指标的历史趋势图能够对系统做优化。

2.监控指标

(1)QPS (每秒查询量)

(2)连接数

(3)CPU使用情况

(4)内存使用情况

3.监控结构

Redis的监控分为两部分,一部分是定时器,每一分钟(时间间隔根据自己的需求定义)负责采集数据和监控的预警(针对QPS、连接数、内存等指标超过阈值给出短信和邮件预警),另一部分是监控结果的展示,在前端页面展示方便查看和数据的对比。

4.数据采集和显示

可以在客户端通过info命令来获取redis的信息,信息详解参见:http://blog.csdn.net/zhaowenbo168/article/details/53224189

4.1 QPS

QPS=(total_commands_processed2 - total_commands_processed1)/time,也可以使用instantaneous_ops_per_sec参数,监控的QPS量,如果超出阈值(具体的阈值根据机器的性能),则给预警,另外可以根据历史趋势图,如果发现QPS的值逐渐增高,说明业务量增大了,根据历史的趋势图可以提前做好DB的扩容和优化等。

4.2 连接数

连接数=connected_clients,最大连接数使用命令config get maxclients查询,需要监控连接数,例如当连接数达到最大连接数的60%给出预警,可能是业务量的增大造成连接数的增加,能够提前感知DB的状态。

4.3 CPU

CPU使用情况=used_cpu_sys,计算CPU的使用占比情况,如果redis使用率过高给出预警等。

4.4 内存

内存使用情况=used_memory,通过config get maxmemory计算redis的最大内存,例如已使用内存超出最大值的百分之80能够给出提示,redis当内存不够用的时候会采用LRU算法回收内存,这时可能对服务产生抖动,最好能够提前感知,做出预防。

持久化情况的监控

如果因为你的机器或 Redis 本身的问题导致 Redis 崩溃了,那么你唯一的救命稻草可能就是 dump 出来的rdb文件了,所以,对 Redis dump 文件进行监控也是很重要的。可以通过对rdb_last_save_time 进行监控,了解最近一次 dump 数据操作的时间,还可以通过对rdb_changes_since_last_save进行监控来获得如果这时候出现故障,会丢失(即已改变)多少数据。

本文仅供给参考,还有诸多不足,只是站在自己的角度的一些看法。

Redis监控和预警相关推荐

  1. 细说Redis监控和告警

    https://blog.csdn.net/qq_27623337/article/details/53206685 对于任何应用服务和组件,都需要一套完善可靠谱监控方案. 尤其redis这类敏感的纯 ...

  2. [转]细说Redis监控和告警

    原文  https://zhuoroger.github.io/2016/08/20/redis-monitor-and-alarm/? 对于任何应用服务和组件,都需要一套完善可靠谱监控方案. 尤其r ...

  3. 大型API网关(六)—— 监控和预警

    为什么监控和预警对网关如此重要? 因为网关的流量太大了 对上百万QPS的系统来说,即使故障只持续1分钟,其造成的影响也是巨大的,网关一旦发生故障,都是大事件.所以,必须有完善的监控,才能第一时间发现并 ...

  4. Redis监控和告警

    对于任何应用服务和组件,都需要一套完善可靠谱监控方案. 尤其redis这类敏感的纯内存.高并发和低延时的服务,一套完善的监控告警方案,是精细化运营的前提. 本文分几节,细说Redis的监控和告警: 1 ...

  5. 我为什么用ES做Redis监控,不用Prometheus或Zabbix?

    本文根据李猛老师在[deeplus直播第220期]线上分享演讲内容整理而成. 李猛 数据技术专家 Elastic-Stack产品深度用户,ES认证工程师,对Elastic-Stack开发.架构.运维有 ...

  6. Redis监控技巧总结

    Redis 监控最直接的方法当然就是使用系统提供的 info 命令来做了,你只需要执行下面一条命令,就能获得 Redis 系统的状态报告. redis-cli info 内存使用 如果 Redis 使 ...

  7. Metrics.net + influxdb + grafana 构建WebAPI的自动化监控和预警

    前言 这次主要分享通过Metrics.net + influxdb + grafana 构建WebAPI的自动化监控和预警方案.通过执行耗时,定位哪些接口拖累了服务的性能:通过请求频次,设置适当的限流 ...

  8. Redis监控利器---Redis State

    强烈推荐一个大神的人工智能的教程:http://www.captainbed.net/zhanghan [前言] 在之前的博文<Redis百万级别数据迁移>中分享我们系统为降低服务器成本, ...

  9. 转:Redis监控技巧

    转自:http://blog.nosqlfan.com/html/4166.html Redis监控技巧 作者:nosqlfan on 星期二, 一月 29, 2013 · 16条评论 [阅读:25, ...

最新文章

  1. REACT day 1
  2. Metadata Lock原理2
  3. 真正的 Tornado 异步非阻塞
  4. SpringBoot 2.x 监控中心:Actuator
  5. Hadoop集群(第3期)_VSFTP安装配置
  6. java.lang.NoClassDefFoundError: org/apache/juli/logging/LogFactory
  7. 帮人取款每百元抽10元回扣,最终涉嫌诈骗罪被批捕
  8. Thunder团队第三周 - Scrum会议6
  9. socket网络编程ftp
  10. 小程序 | 保存图片时处理名称的细节(时间戳+后缀名)
  11. 支付宝兑换的扫地机器人_支付宝里这笔钱赶紧用掉!年底过期作废
  12. BERT微调效果不佳?不如试试这种大规模预训练模型新范式
  13. PostgreSQL的实践一:数据类型(一)
  14. 微软发布 .Net Core 3.0 版重大更新,对开发者来说意味着什么?
  15. 移动端1px细线问题
  16. 2010年11月51CTO壁纸点评活动获奖名单【已结束】
  17. 指针的那些事-----初窥指针的强制转换
  18. 偏相关分析在matlab上的实现
  19. 十大排序算法Java版
  20. Android程序打包安装过程

热门文章

  1. 【kubernetes】coredns报错
  2. 移动时代的经济学——碎片化应用
  3. tomcat配置前端静态文件gzip压缩
  4. c蔚语言艺术,晚唐张乔诗歌的语言艺术与美学风格-中国社会科学网.PDF
  5. 对我自己的一点分析总结
  6. Java定时任务的解决方案(Quartz等)
  7. [乐意黎原创]PHP启用session后抛 session_start(): open(/var/lib/php/session/sess_... 的解决办法
  8. 支付宝报错: invalid-signature 错误原因: 验签出错,建议检查签名字符串或签名私钥与应用公钥是否匹配,网关生成的验签字符串为:xxx
  9. 毕业设计 基于深度学习的人脸性别年龄识别 - 图像识别 opencv
  10. 【Linux】vim文本编辑器的使用