13518219792

建站动态

根据您的个性需求进行定制 先人一步 抢占小程序红利时代

服务出现明显的变慢,该如何诊断处理?

今天我们来讨论的问题是,服务出现明显的变慢,该如何诊断处理?

成都创新互联公司专注于企业全网整合营销推广、网站重做改版、疏附网站定制设计、自适应品牌网站建设、H5网站设计商城网站制作、集团公司官网建设、成都外贸网站建设、高端网站制作、响应式网页设计等建站业务,价格优惠性价比高,为疏附等各大城市提供网站开发制作服务。

首先我们要确定服务是突然变慢还运行一段时间后观察到变慢?类似的变慢是经常出现还是偶发的?还有对慢的定义是什么?是否可以理解为系统对其他方面的请求的延时变长?

在理清楚问题的症状后,更有利于分析问题的具体原因,大概有以下思路:

接下来我们来了解一下业内广泛的性能分析方法论。方法论总结为两类:

我们重点看第一种,自上而下。各个阶段的思路以及使用的工具等。

分析系统的性能,我们常从CPU、内存和IO等入手,这几点是重点关注项。对于CPU,如果是Linux环境,可以先用top命令查看负载情况:

可以看到,平均负载的三个值并不高,也没有升高的迹象,可以先不特别关注,接下来分析最耗费CPU的Java线程,步骤如下:

利用top命令获取相应的pid,-H代表thread模式,也可以配合grep命令更精确定位。

top -H

然后转换成16进制。

printf "%x" your_pid

最后利用jstack获取的线程栈,对比相应的ID即可。也可以用vmstat,查看上下文切换的数量,比如指定时间间隔为1,收集20次

vmstat -1 -20

如果上下文切换非常高,并且系统中高很多,就表明可能存在不合理的线程调度导致的,可以用pidstat进一步分析定位。

除了CPU,内存和IO也有很多注意事项:


网站题目:服务出现明显的变慢,该如何诊断处理?
本文路径:http://cdbrznjsb.com/article/cdegcdo.html

其他资讯

让你的专属顾问为你服务