HI! 我是小小,今天是本周的第六篇,本篇将会着重讲解关于Redis负载的问题。

网页监控

通过阿里的Grafana监控,发现服务器的CPU负载,内存,网络输入输出相当正常,所以Redis出现问题。使用单节点的32M 16GB的阿里云Redis,登录网页,查看性能监控,发现CPU使用飙升到100%;QPS从1000升高到6000,但是远远低于极限值,连接数量从0升高到3000,也就是远远低于极限值。临时方案:先短期租用一台Redis,临时更换Redis配置,重启应用。尽快排查

服务器命令监控

登录Redis-cli,通过info命令查看服务器状态和命令统计,总结异常点:

  1. 查询Reduis慢指令slowlog,以及keys_并且耗费时间严重,在当前业务下执行keys_会导致阻塞业务,导致查询国漫,cpu过稿。

  2. 查看redis指令执行情况,排除exec,flushall指令,业务使用指令过程中耗时严重的有setnx有7.5千万次调用平均耗时6s,setex有8.4万次调用平均耗时7.33s,del有2.6亿吃调研耗时69s,hegtall有14亿次调用耗时20s,keys有2千万次调用平均耗时 3740s。通常而言,这些指令耗时与 value 大小呈正比,所以可以排查这些指令相关的数据近期有没有较大增长。或者近期有没有业务改造,会频繁使用上述指令,也会造成 cpu 高。通过 info commandstats 可以查看 Redis 命令统计信息,其中命令格式是

cmdstat_XXX: calls=XXX,usec=XXX,usec_per_call=XXX

调用次数、耗费CPU时间、每个命令平均耗费CPU(单位为微秒)

通过 slowlog 命令查看慢命令(默认超过 10ms 就会被记录到日志,只会记录其命令执行的时间,不包含 IO 往返操作,也不记录单由网络延迟引起的响应慢) slowlog命令格式如下

xxxxx> slowlog get 103) 1) (integer) 411           2) (integer) 1545386469     3) (integer) 232663          4) 1) "keys"              2) "mecury:*"

图中各字段表示的是:

1=日志的唯一标识符

2=命令的执行时间点,以UNIX时间戳表示

3=查询命令执行时间,以微妙为单位,????中的是230ms

4=执行的命令,以数组的形式排列。完整的命令是 keys mucury:* 所以通过这些参数,基本可以确定,是突然有大量的keys *命令导致CPU负载升高,导致响应延迟,问题我们应用中没有开放keys *命令 问题解决

关于作者

我是小小,双鱼座的程序猿,我么下期再见~bye

END

「 往期文章 」

大礼包 | 来拿小程序大礼包啦!

WebSocket | 为什么你前后端推送不会用?因为你少了WebSocket的帮忙

Lombook | 你的代码真正元凶找到了:Lombook

扫描二维码

获取更多精彩

小明菜市场

来源:网络(侵删)

图片来源:网络(侵删)

线上排查 | 线上Redis负载暴涨100%,业务中断,这样排查很赞!相关推荐

  1. 阿里技术:如何快速排查线上故障?

    阿里技术:如何快速排查线上故障? 以下文章来源于阿里技术 ,作者小峯 阿里技术 阿里巴巴官方技术号,关于阿里的技术创新均呈现于此. 有哪些常见的线上故障?如何快速定位问题?本文详细总结工作中的经验,从 ...

  2. 阿里二面被问怎么排查线上问题的?

    不知道你们经历过这种问题没有,比如问你遇到过线上性能问题没有,GC频繁,CPU飙高,任务队列积压,线程池任务拒绝等等,对于看重项目经验的面试官,这种问题基本是标配,问线上问题处理的经过,问题定位,排查 ...

  3. php线上问题排查,线上问题排查神器 Arthas

    摘要: rController|kite.springcloud.jxm.service.MonitorDashboardServiceoverviewstack输出当前方法被调用的调用路径stack ...

  4. 三菱触摸屏通讯错误_三菱触摸屏插上通讯线直接黑屏,老司机手把手教你解决触摸屏黑屏...

    三菱触摸屏大多数情况下,是插上通讯线后不会黑屏的,然后今天却遇到触摸屏插上通讯线就直接黑屏.我试过好多次,没有办法就请教三菱触摸屏做得比久的老司机们,跟他们一说.他们用排除法叫我一步步去排查解决,今天 ...

  5. 三菱plc232数据线驱动下载_三菱触摸屏插上通讯线直接黑屏,老司机手把手教你解决触摸屏黑屏...

    三菱触摸屏大多数情况下,是插上通讯线后不会黑屏的,然后今天却遇到触摸屏插上通讯线就直接黑屏.我试过好多次,没有办法就请教三菱触摸屏做的比久的老司机们,跟他们一说.他们用排除法叫我一步步去排查解决,今天 ...

  6. 当线下门店遇上AI:华为云ModelBox携手佳华科技客流分析实践

    摘要:在赋能传统门店客流经营数字化转型方面,华为云ModelBox与伙伴佳华科技合作推出的"华为云客流统计项目",算是一次成功的探索. 本文分享自华为云社区<当线下门店遇上A ...

  7. I2C走线技巧、及上拉电阻、电源电压、总线电容三者间的函数关系

    目录 I2C总线PCB布线注意事项: 博客其他文档可以学习:https://www.cnblogs.com/zhiqiang_zhang/ I2C总线线路的走线方式 I2C器件与I2C总线的接线方式 ...

  8. python线下培训-天津python培训,0基础学python线上还是线下好?

    0基础开始选择学习python的时候就注定要纠结于学习方式是线上学习好呢还是线下学习好呢?其实两者都各有各的优势,线上课程便宜,时间自由灵活,不过需要我们强大的自学能力以及自控能力:线下的话学习氛围. ...

  9. python线下培训-Python培训是应该选择线上还是线下呢?

    前言 Python现在非常火,语法简单而且功能强大,很多同学都想学Python!所以小的给各位看官们准备了高价值Python学习视频教程及相关电子版书籍,欢迎前来领取! 想学习Python的朋友一定都 ...

最新文章

  1. iPhone中字符串的国际化
  2. 前端小项目:使用canvas绘画哆啦A梦
  3. SQL查询交集、并集、差集
  4. 科大星云诗社动态20201215
  5. python连接oracle视频教程_python怎么连接oracle
  6. ntdll 异常代码0xc0000374_不要把异常当做业务逻辑,这性能可能你无法承受
  7. c# json.net xml互转
  8. Star UML指导手册
  9. window.onscroll页面滚动条滚动事件
  10. 【转载】Android面试题集
  11. Java实现网页滑动验证与短信验证码案例精析
  12. journalctl查看服务日志
  13. 街头篮球手游服务器维护,街头篮球手游2017.6.22维护更新公告 宝箱位置调整更新一览...
  14. 中国电子学会C++软件编程一级—六级历年真题模拟题题库260题及参考答案第六版 (星卯教育)TB
  15. 瞬态抑制二极管与稳压二极管的区别
  16. 达人评测 R7 PRO 6850HS 核显相当于什么显卡
  17. 如何去掉html中input的边框
  18. TreeView详解
  19. php--spry框架制作级联下拉菜单
  20. 解决下载github-production-release-asset-2e65be.s3.amazonaws.com上release文件慢的问题

热门文章

  1. 安卓动态调试七种武器之离别钩 – Hooking(下)
  2. java Redis Jedis存储Java对象 - (Java序列化为byte数组方式)
  3. 深入理解DOM事件机制系列第四篇——事件模拟
  4. 浏览器屏蔽flash视频广告
  5. eclipse 中警告信息汇总
  6. Python学习笔记——for循环和range函数
  7. 3d文件与html结合,js和HTML5怎么结合?
  8. 最简单红米手机如何没root激活XPOSED框架
  9. DOM中对表格的操作
  10. SpringMVC学习一