记录一次redis cpu异常升高的排插思路

很久没有写博客  如今从新捡起来  记录工做中遇到的问题  方便之后在遇到相似的问题也有一个参考。redis

 

背景:有一天生产服务器redis  cpu 频繁报警    单核cpu 因此在想是否是业务量上来了。肯定以后发现不是这个问题。服务器

排查思路:app

1. 查看监控cpu 最近三天 七天的历史状态 发现cpu目前是异常状态,比往常要高不少 ui

2. 查看慢日志 发现有get app_encrypted:crawler_task_switch 获取某个key 用了40ms spa

3. monitor 监控当前命令使用状态 收集1分钟日志

 redis-cli -h ***** -a **** monitor > monitor.txt code

4. 查看top command 发现get是最频繁的   开发

  取关键字GET的进行分析,统计key的get次数:   get

  awk '/GET/{a[$5]++}END{for(i in a)print i"\t"a[i]}' monitor.txt |sort -k2nr|more 博客

5. 发现排名第一的key是app_encrypted:crawler_task_switch 1分钟get 十几万次。


  问题找到,反应给开发 发现写了死循环 代码修改以后cpu恢复正常。以上是问题排查及解决思路。 在这里记录很少 可是在排查过程当中仍是会遇到一些其余问题。

相关文章
相关标签/搜索