大数据-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进行可视化监控。
相关推荐
2401_8830410835 分钟前
新锐品牌电商代运营公司都有哪些?
大数据·人工智能
青云交38 分钟前
大数据新视界 -- 大数据大厂之 Impala 性能优化:融合机器学习的未来之路(上 (2-1))(11/30)
大数据·计算资源·应用案例·数据交互·impala 性能优化·机器学习融合·行业拓展
Nu11PointerException42 分钟前
JAVA笔记 | ResponseBodyEmitter等异步流式接口快速学习
笔记·学习
2401_850410831 小时前
文件系统和日志管理
linux·运维·服务器
一只哒布刘3 小时前
NFS服务器
运维·服务器
Ai 编码助手3 小时前
MySQL中distinct与group by之间的性能进行比较
数据库·mysql
Json_181790144803 小时前
An In-depth Look into the 1688 Product Details Data API Interface
大数据·json
陈燚_重生之又为程序员3 小时前
基于梧桐数据库的实时数据分析解决方案
数据库·数据挖掘·数据分析
caridle3 小时前
教程:使用 InterBase Express 访问数据库(五):TIBTransaction
java·数据库·express
白云如幻3 小时前
MySQL排序查询
数据库·mysql