0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

面试题:监控Redis哪些指标

马哥Linux运维 来源:51CTO博客 作者:yht_1990 2021-11-22 09:26 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

监控 Redis 哪些指标?

这是一个常见的面试题,直接上菜

监控指标

  • 性能指标:Performance

  • 内存指标: Memory

  • 基本活动指标:Basic activity

  • 持久性指标: Persistence

  • 错误指标:Error

  • 性能指标:Performance


Name Description
latency Redis响应一个请求的时间
instantaneous_ops_per_sec 平均每秒处理请求总数
hi rate(calculated) 缓存命中率(计算出来的)

内存指标: Memory

Name Description
used_memory 已使用内存
mem_fragmentation_ratio 内存碎片率
evicted_keys 由于最大内存限制被移除的key的数量
blocked_clients 由于BLPOP,BRPOP,or BRPOPLPUSH而备阻塞的客户端

基本活动指标:Basic activity

Name Description
connected_clients 客户端连接数
conected_laves slave数量
master_last_io_seconds_ago 最近一次主从交互之后的秒数
keyspace 数据库中的key值总数

持久性指标: Persistence

Name Description
rdb_last_save_time 最后一次持久化保存磁盘的时间戳
rdb_changes_sice_last_save 自最后一次持久化以来数据库的更改数

错误指标:Error

Name Description
rejected_connections 由于达到maxclient限制而被拒绝的连接数
keyspace_misses key值查找失败(没有命中)次数
master_link_down_since_seconds 主从断开的持续时间(以秒为单位)

监控方式

  • redis-benchmark

  • redis-stat

  • redis-faina

  • redislive

  • redis-cli

  • monitor

  • showlog

  • 1)get:获取慢查询日志

  • 2)len:获取慢查询日志条目数

  • 3)reset:重置慢查询日志

相关配置:

slowlog-log-slower-than 1000 # 设置慢查询的时间下线,单位:微秒slowlog-max-len 100 # 设置慢查询命令对应的日志显示长度,单位:命令数
  • info(可以一次性获取所有的信息,也可以按块获取信息)

  • 1)server:服务器运行的环境参数

  • 2)clients:客户端相关信息

  • 3)memory:服务器运行内存统计数据

  • 4)persistence:持久化信息

  • 5)stats:通用统计数据

  • 6)Replication:主从复制相关信息

  • 7)CPU:CPU使用情况

  • 8)cluster:集群信息

  • 9)Keypass:键值对统计数量信息

终端info命令使用
  • ./redis-cli info 按块获取信息 | grep 需要过滤的参数
  • ./redis-cli info stats | grep ops

交互式info命令使用

 #./redis-cli> info server

	

性能监控

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

aeff8370-4a07-11ec-b939-dac502259ad0.png

内存监控

[root@CombCloud-2020110836 src]# ./redis-cli info | grep used | grep humanused_memory_human:2.99M  # 内存分配器从操作系统分配的内存总量used_memory_rss_human:8.04M  #操作系统看到的内存占用,top命令看到的内存used_memory_peak_human:7.77M # redis内存消耗的峰值used_memory_lua_human:37.00K   # lua脚本引擎占用的内存大小

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

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

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

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

内存碎片率

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

已使用内存

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

	

基本活动指标

redis连接了多少客户端

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

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

	

持久性指标

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

	

错误指标

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

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

	

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

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

	

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

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

	

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

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

	

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

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

	

redis性能测试命令

./redis-benchmark -c 100 -n 5000

	

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

责任编辑:haq
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 内存
    +关注

    关注

    9

    文章

    3173

    浏览量

    76112
  • 监控系统
    +关注

    关注

    21

    文章

    4149

    浏览量

    184342
  • Redis
    +关注

    关注

    0

    文章

    390

    浏览量

    12050

原文标题:面试官:你都监控 Redis 哪些指标?

文章出处:【微信号:magedu-Linux,微信公众号:马哥Linux运维】欢迎添加关注!文章转载请注明出处。

收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    人工智能工程师高频面试题汇总:循环神经网络篇(题目+答案)

    后台私信雯雯老师,备注:循环神经网络,领取更多相关面试题随着人工智能技术的突飞猛进,AI工程师成为了众多求职者梦寐以求的职业。想要拿下这份工作,面试的时候得展示出你不仅技术过硬,还得能解决问题。所以
    的头像 发表于 10-17 16:36 481次阅读
    人工智能工程师高频<b class='flag-5'>面试题</b>汇总:循环神经网络篇(题目+答案)

    用30道电子工程师面试题来拷问堕落的你...

    今天用30道电子工程师面试题来拷问堕落的你,你能扛住第几题?1、下面是一些基本的数字电路知识问题,请简要回答之。(1)什么是Setup和Hold时间?答:Setup/HoldTime用于测试芯片
    的头像 发表于 10-15 17:37 690次阅读
    用30道电子工程师<b class='flag-5'>面试题</b>来拷问堕落的你...

    Redis集群部署与性能优化实战

    Redis作为高性能的内存数据库,在现代互联网架构中扮演着关键角色。作为运维工程师,掌握Redis的部署、配置和优化技能至关重要。本文将从实战角度出发,详细介绍Redis集群的搭建、性能优化以及
    的头像 发表于 07-08 17:56 621次阅读

    每周推荐!硬件设计指南+无刷电机原理图大全+工程师面试题库汇总

    、硬件工程师或研发类笔试面试题库汇总 一、模拟电路(基本概念和知识总揽) 1、基本放大电路种类 (电压放大器,电流放大器,互导放大器和互阻放大器),优缺点,特别是广泛采用差分结构的原因。 2、负反馈种类
    发表于 07-07 14:38

    最全的硬件工程师笔试试题

    硬件面试题之一 1、下面是一些基本的数字电路知识问题,请简要回答之。 (1) 什么是 Setup 和 Hold 时间? 答:Setup/Hold Time 用于测试芯片对输入信号和时钟信号之间的时间
    发表于 06-26 15:34

    【硬件方向】名企面试笔试真题:大疆创新校园招聘笔试题

    名企面试笔试真题:大疆创新校园招聘笔试题-硬件 是几年前的题目,不过值得参考一下哦 纯分享贴,有需要可以直接下载附件获取完整资料! (如果内容有帮助可以关注、点赞、评论支持一下哦~)
    发表于 05-16 17:31

    硬件工程师面试必看试题(经典)

    硬件工程师面试试题 模拟电路 1、基尔霍夫定理的内容是什么?(仕兰微电子) 2、平板电容公式(C=εS/4πkd)。(未知) 3、最基本的如三极管曲线特性。(未知) 4、描述反馈电路的概念
    发表于 04-21 15:36

    Nginx常见面试题总结

    Nginx是一个 轻量级/高性能的反向代理Web服务器,用于 HTTP、HTTPS、SMTP、POP3 和 IMAP 协议。
    的头像 发表于 03-03 09:36 1534次阅读
    Nginx常见<b class='flag-5'>面试题</b>总结

    Redis实战笔记

    在目前的技术选型中,Redis 俨然已经成为了系统高性能缓存方案的事实标准,因此现在 Redis 也成为了后端开发的基本技能树之一。   基于上述情况,今天给大家分享一份 杰哥 亲笔撰写的内部
    的头像 发表于 02-09 09:12 625次阅读
    <b class='flag-5'>Redis</b>实战笔记

    面试题】人工智能工程师高频面试题汇总:概率论与统计篇(题目+答案)

    ​随着人工智能技术的突飞猛进,AI工程师成为了众多求职者梦寐以求的职业。想要拿下这份工作,面试的时候得展示出你不仅技术过硬,还得能解决问题。所以,提前准备一些面试常问的问题,比如概率论与统计知识
    的头像 发表于 01-22 13:00 1387次阅读
    【<b class='flag-5'>面试题</b>】人工智能工程师高频<b class='flag-5'>面试题</b>汇总:概率论与统计篇(题目+答案)

    Redis Cluster之故障转移

    1. Redis Cluster 简介 Redis Cluster 是 Redis 官方提供的 Redis 集群功能。 为什么要实现 Redis
    的头像 发表于 01-20 09:21 1251次阅读
    <b class='flag-5'>Redis</b> Cluster之故障转移

    Redis使用重要的两个机制:Reids持久化和主从复制

    持久化的,也就是说要先存储到磁盘上嘛,这样才方便主从之间的数据同步。 此外,因为Redis 主从复制的原理也是后端面试必考知识点,所以先送上一份福利【77道redis高频面试题汇总(带
    的头像 发表于 12-18 10:33 622次阅读
    <b class='flag-5'>Redis</b>使用重要的两个机制:Reids持久化和主从复制

    Redis缓存与Memcached的比较

    Redis和Memcached都是广泛使用的内存数据存储系统,它们主要用于提高应用程序的性能,通过减少对数据库的直接访问来加速数据检索。以下是对Redis和Memcached的比较,涵盖了它们的一些
    的头像 发表于 12-18 09:33 916次阅读

    面试题】人工智能工程师高频面试题汇总:机器学习深化篇(题目+答案)

    ,或者深度学习的框架,还有怎么优化模型,这些都是加分项,能有效提高面试通过率。本篇小编整理了一些高频的机器学习深化方面的面试题,这些题目都是从实际面试中总结出来的,非
    的头像 发表于 12-16 13:42 3308次阅读
    【<b class='flag-5'>面试题</b>】人工智能工程师高频<b class='flag-5'>面试题</b>汇总:机器学习深化篇(题目+答案)

    面试题】人工智能工程师高频面试题汇总:Transformer篇(题目+答案)

    随着人工智能技术的突飞猛进,AI工程师成为了众多求职者梦寐以求的职业。想要拿下这份工作,面试的时候得展示出你不仅技术过硬,还得能解决问题。所以,提前准备一些面试常问的问题,比如机器学习的那些算法
    的头像 发表于 12-13 15:06 2386次阅读
    【<b class='flag-5'>面试题</b>】人工智能工程师高频<b class='flag-5'>面试题</b>汇总:Transformer篇(题目+答案)