美文网首页
001-性能问题分析的一般步骤

001-性能问题分析的一般步骤

作者: 0981b16f19c7 | 来源:发表于2019-07-06 10:15 被阅读0次

性能问题主要从系统资源瓶颈和应用程序瓶颈两个角度来考虑:

系统资源瓶颈

资源分类

硬件资源:CPU、内存、磁盘、文件系统、网络

软件资源:文件描述符数、连接跟踪数、套接字缓冲区大小

衡量指标

使用率、饱和度、错误数

系统资源的分析方法

CPU性能分析

CPU性能指标及其分析工具

缩小排查范围,我通常会先运行几个支持指标较多的工具,top、vmstat和pidstat.

内存性能分析

衡量指标:内存使用情况(已用内存、剩余内存、共享内存、可用内存、缓存和缓冲区的用量等)、进程内存使用情况(比如进程的虚拟内存、常驻内存、共享内存以及 Swap 内存等)、缺页异常、SWAP使用情况(比如 Swap 的已用空间、剩余空间、换入速度和换出速度等)

内存性能指标 内存性能指标检测工具 最常用的内存分析工具

磁盘和文件IO性能分析

磁盘和文件IO分析图谱

网络性能分析

网络性能分析图谱

应用程序瓶颈

瓶颈来源

资源瓶颈、依赖服务瓶颈以及应用自身的瓶颈。

资源瓶颈分析

系统资源(软硬件资源)出现瓶颈,从而导致应用程序的运行受限。

分析方法:直接采用系统资源分析方法即可。

依赖服务的瓶颈

譬如数据库、分布式缓存、中间件等应用程序,直接或者间接调用的服务出现性能问题,从而导致用于程序的运行受限。

分析方法:使用全链路跟踪系统

应用程序自身的瓶颈

譬如多线程处理不当,死锁,业务算法的复杂度过高等。

分析方法:通过系统调用、热点函数或应用自身的的指标监控与日志监控,观察关键环节的耗时和内部执行过程中的错误。

两者的关联性

系统资源和应用程序本来就是相互影响、相辅相成的一个整体。系统是应用的运行环境,系统的瓶颈会导致应用的性能下降;而应用的不合理设计,也会引发系统资源的瓶颈。实际上,很多资源瓶颈,也是应用程序自身运行导致的。比如进程的聂村泄露,会导致系统的内存不足;进程过多的IO请求,会拖慢整个系统的IO请求等。所以很多情况下,资源瓶颈和应用自身的瓶颈,其实是同一个问题导致,并不需要我们重复分析

相关文章

  • 001-性能问题分析的一般步骤

    性能问题主要从系统资源瓶颈和应用程序瓶颈两个角度来考虑: 系统资源瓶颈 资源分类 硬件资源:CPU、内存、磁盘、文...

  • [JPT_09] 性能调优与回归测试-简要总结

    一、性能调优 分析测试结果的同时,可对性能问题进行确定与优化操作。一般而言,系统出现性能问题的表象特征如下:1. ...

  • 英国在线零售商数据分析

    前言: 数据分析的一般流程,首先确定问题,再带着问题进行下面的分析步骤 0、分析问题 一份数据可以分析很多维度,为...

  • 10分钟后性能测试瓶颈调优!想进大厂这个必须会

    目录 引言:性能瓶颈调优 性能调优步骤 性能瓶颈概率分布 系统资源 CPU top 参数详解 性能分析思路 案例分...

  • 程序编写步骤 — IPO模式

    IPO模式 input-process-output 编写程序的一般步骤 1分析问题——问题的计算部分 2确定问题...

  • php入门--性能测试

    PHP性能问题具体分析 工具:XHProf-性能分析扩展工具ab-压力测试vld-opcode代码分析 PHP性能...

  • 性能测试学习 9 如何查找CPU占用过高的程序并进行定位

    作为一名好的性能测试工程,不仅要测试出系统真实的性能,还需要定位系统的性能瓶颈,协助研发定位分析问题。 一般可以根...

  • 性能问题追踪的步骤

    开始性能调查时的几个重要步骤 1、找到指标、基线和目标 第一步就是确定当前的性能,并明确其应提升的程度。明显性...

  • 分析问题的步骤

    一件事情能否做成需要的是方方面面,缺一不可!这是从中国人口问题思考到的!印度人口多,但是没有得到中国人口的福利!说...

  • 分析问题的步骤

    普通的人观察一次合作,优秀的人洞察协议背后利益分配、风险转嫁的连接关系。 普通的人观察一个团队,优秀的人洞察团队里...

网友评论

      本文标题:001-性能问题分析的一般步骤

      本文链接:https://www.haomeiwen.com/subject/dkzyhctx.html