接到报警通知,负载过高,达到800%,load也过高,有11了. MySQL版本为5.6.12-log 1 top 之后,确实是mysqld进程占据了所有资源. 2 查看error日志,无任何异常 3 show eninge innodb status\G,没有死锁信息. 4 show full processlist; 没有耗时非常大的慢sql再跑.看并发,当前的线程总数量也才30个左右. 5 查看iostat,读写正常. 到底是什么问题呢?查看slow log,发现如下SQL,频繁执行,耗时…
2016-05-25 08:58:34 昨天线上小白系统因为调用外部http接口,超时不释放,导致页面反应很慢,时间一长,报502错误. 上网查了下,502错误是因为服务对于客户的请求没有得到及时的反应,查询日志,发现很多调http接口异常,页面反应也很慢. 瞬间想到缩短http客户端调用http接口的超时时间,搜到这个博客http://blog.csdn.net/xinying0424/article/details/36006383  感谢 HttpClient 4: 连接超时: 连接超时…
接到报警通知,负载过高,达到800%,load也过高,有11了. MySQL版本号为5.6.12-log 1 top 之后,确实是mysqld进程占领了全部资源. 2 查看error日志,无不论什么异常 3 show eninge innodb status\G,没有死锁信息. 4 show full processlist; 没有耗时很大的慢sql再跑.看并发,当前的线程总数量也才30个左右. 5 查看iostat,读写正常. 究竟是什么问题呢?查看slow log,发现例如以下SQL,频繁运…
1.阐述 内部架构:Tomcat应用程序---> nginx ---> 其他Tomcat应用程序,内部Tomcat应用通过nginx调用其他应用. HTTP插件:HttpClient 4.2.3 关闭连接的代码:httpClient.getConnectionManager().closeIdleConnections(5, TimeUnit.SECONDS); 2.说明 要说明的是CLOSE_WAIT产生的原因和服务器.nginx.其他配置无关,是HttpClient的getConnecti…
之所以想写下线上bug,因为发觉有些公司对线上bug的处理是比较严格甚至是很苛刻,涉及到的相关人可能会因此而背黑锅. 之所以会存在这样情况,因为公司各部门都有关联,特别是用户.老板的投诉,也给公司会造成直接口碑或经济等重大损失. 第一节: 下面举几个实际发生过的关于线上bug的例子: 1.一个修改update操作,结果引起删除delete了一条数据: 问题追溯:实际上测试漏测了,导致项目开发leader辞退,团队扣奖金. 2.一个地图上的所有目标加油站数据加载不出来: 问题追溯:实际上因为客户端…
一.引子 对于互联网公司,线上CPU飙升的问题很常见(例如某个活动开始,流量突然飙升时),按照本文的步骤排查,基本1分钟即可搞定!特此整理排查方法一篇,供大家参考讨论提高. 二.问题复现 线上系统突然运行缓慢,CPU飙升,甚至到100%,以及Full GC次数过多,接着就是各种报警:例如接口超时报警等.此时急需快速线上排查问题. 三.问题排查 不管什么问题,既然是CPU飙升,肯定是查一下耗CPU的线程,然后看看GC. 3.1 核心排查步骤 1.执行“top”命令:查看所有进程占系统CPU的排序.…
前言 2019双11还有不到2个月就要到来了,大家也都知道服务器在大促期间由于流量的增加势必导致机器的cpu与load变高.因此趁着这个时机正好再好好学习.巩固一下cpu和load的概念,为双11做准备的同时也是增加自己的技能储备. 不过cpu和load这块真的还是很需要积累的,我自己经验尚浅,感觉还是有许多写的不到位与不对的地方,也是希望如果有错误,大家可以帮助指正. top命令 既然说了cpu和load,那总需要监控吧,没有监控就不知道cpu和load,后面的一切也就无从谈起了. top命令…
本文转载自线上CPU飙升100%问题排查 引子 对于互联网公司,线上CPU飙升的问题很常见(例如某个活动开始,流量突然飙升时),按照本文的步骤排查,基本1分钟即可搞定!特此整理排查方法一篇,供大家参考讨论提高. 问题复现 线上系统突然运行缓慢,CPU飙升,甚至到100%,以及Full GC次数过多,接着就是各种报警:例如接口超时报警等.此时急需快速线上排查问题. 问题排查 不管什么问题,既然是CPU飙升,肯定是查一下耗CPU的线程,然后看看GC. 核心排查步骤 1.执行"top"命令:…
本文已收录 https://github.com/lkxiaolou/lkxiaolou 欢迎star.搜索关注微信公众号"捉虫大师",后端技术分享,架构设计.性能优化.源码阅读.问题排查.踩坑实践. 背景 最近某天的深夜,刚洗完澡就接到业务方打来电话,说他们的 dubbo 服务出故障了,要我协助排查一下. 电话里,询问了他们几点 是线上有损故障吗?--是 止损了吗?--止损了 有保留现场吗?--没有 于是我打开电脑,连上 VPN 看问题.为了便于理解,架构简化如下 只需要关注 A.B…
cpu如何计算 当我们执行top命令的时候,看到里面的值(主要是cpu和load)值是一直在变的,因此有必要简单了解一下Linux系统中cpu的计算方式. cpu分为系统cpu和进程.线程cpu,系统cpu的统计值位于/proc/stat下(以下的截图未截全): cpu.cpu0后面的这些数字都和前面的us.sy.ni这些对应,具体哪个对应哪个值不重要,感兴趣的可以网上查一下文档. 进程cpu的统计值位于/proc/{pid}/stat下: 线程cpu的统计值位于/proc/{pid}/task…