大数据-44 Redis 慢查询日志 监视器 慢查询测试学习

点一下关注吧!!!非常感谢!!持续更新!!!

目前已经更新到了:

  • Hadoop(已更完)
  • HDFS(已更完)
  • MapReduce(已更完)
  • Hive(已更完)
  • Flume(已更完)
  • Sqoop(已更完)
  • Zookeeper(已更完)
  • HBase(已更完)
  • Redis (正在更新...)

章节内容

上节完成了的内容如下:

  • Redis通过Lua功能进行扩展
  • Lua下载安装
  • Lua在Redis中的使用案例(多个)

MySQL 中有慢查询日志,在 Redis 中,也有慢查询日志,可以用于监视和优化查询。

慢查询设置

redis 使用列表存储慢查询的日志,采用队列的方式:FIFO

在 redis.conf 中进行配置:

shell 复制代码
#执行时间超过多少微秒的命令请求会被记录到日志上 0 :全记录 <0 不记录
slowlog-log-slower-than 10000
#slowlog-max-len 存储慢查询日志条数
slowlog-max-len 128

查询日志

为了方便测试,可以通过暂时设置的方式,将检查的阈值调低。

shell 复制代码
config set slowlog-log-slower-than 0
config set slowlog-max-len 2

此时我们的操作基本上都会变成慢操作:

shell 复制代码
set name wzk
set age 123
get name
get age

我们查看慢日志内容:

shell 复制代码
slowlog get

日志可以用来解决以下问题:

  • 问题诊断:当系统或应用程序出现问题时,日志提供的信息,帮助开发人员追踪和定位问题的根本原因。
  • 性能优化:通过分析日志数据,可以了解系统的性能瓶颈和潜在问题,并采取相应的措施来优化系统的性能。

定位与处理

使用 slowlog get 可以获得执行较慢的 redis 命令,针对该命令可以进行优化:

  • 尽量使用短的Key,对于Value有些也可以精简,能用int就int
  • 避免 key *,hgetall 这种操作
  • 减少大key的获取,打散成小key
  • 将 RDB模式 转换为 AOF模式 RDB会FORK子进程
  • 想要一次添加多条数据时可以使用管道
  • 尽可能使用HASH存储
  • 尽量限制下Redis使用的内存大小,可以避免Redis使用swap分区或OOM错误

监视器

Redis 客户端可以通过执行 MONITOR 命令将自己变成一个监视器,实时接受并打印服务器当前处理的命令请求的相关信息。

此时,当其他客户端向服务端发送一条命令时,服务器除了会处理这条命令外,还会将这条命令请求的信息发送给所有监视器。

客户端1

shell 复制代码
./redis-cli
monitor

客户端2

shell 复制代码
./redis-cli
set name:001 wzk
set name:002 kangkang
set age:001 12
set age:002 33

监视平台

对Redis进行监视,这里有几个选择方案:

  • Grafana 开箱即用的可视化工具,具有功能齐全的度量仪表盘和图形编辑器,有灵活丰富的图形化选项,可以混合多种风格,支持多个数据源特点。
  • Prometheus 开源的服务监控系统,它通过HTTP协议从远程的机器收集数据并存储在本地的时序数据库上。
  • RedisExporter 为Prometheus提供了redis指标的导出,配合Prometheus以及grafana进行可视化监控。
相关推荐
LccKyI11 分钟前
C#学习day04
经验分享·笔记·学习·c#
math_hongfan11 分钟前
鸿蒙企业级数据存储高级架构:从读写分离到冷热数据分层/归档策略/数据生命周期管理最佳实践
人工智能·学习·华为·架构·harmonyos·鸿蒙
MartinYeung515 分钟前
[论文学习]LLM智能体无法保密:多智能体系统中的隐私评估
人工智能·学习
、达西先生16 分钟前
GMR IK数学原理解读
笔记·学习·il·遥操作·模仿学习
令狐前生16 分钟前
DDD领域模型学习笔记
笔记·学习·架构
qingyulee16 分钟前
git常用指令
大数据·git·elasticsearch
数据智研25 分钟前
【数据分享】中国民政统计年鉴(1949-2025)
大数据·人工智能·信息可视化·数据分析
垂直昵称31 分钟前
多线程实现网页接口并发压力测试
linux·服务器·windows
ACP广源盛139246256731 小时前
Ling‑3.0‑flash 昇腾 0‑Day 适配落地@ACP#IX9104 在国产高密度算力矩阵中的机遇与落地场景
大数据·人工智能·分布式·单片机·嵌入式硬件
程序员-Benothing1 小时前
MySQL 的覆盖索引是什么?
数据库·mysql