首页 > 技术文章 > 性能计数器和性能分析方法

siguadd 2021-05-20 10:00 原文

一.操作系统计数器和分析

1.内存分析方法

iostat命令
Read(write) per sec :磁盘读写次数,一般>5,表示磁盘读,而不是缓存读  r/s w/s
磁盘使用率高,磁盘队列长(wait),而Read(write) per sec小,就是磁盘瓶颈
队列变长,而Read(write) per sec不降,是由于内存不足
 
 

2.CPU分析方法

Cpu使用率,不超过90%,如果多CPU负载不均,也是CPU瓶颈
用户CPU使用率:较大,需要优化算法
数据库:排序或者函数操作
 
 

3.磁盘I/O分析方法

如果服务器是流媒体,数据库或者文件,更容易成为瓶颈
如果只是磁盘使用率较大,可能是磁盘瓶颈
如果相关的值都比较大,可能是内存泄露
 
 

 4.进程分析方法

查看哪个进程处理时间长
查看哪个进程页面失效多,或需要大量内存,或活跃度高
如果resident Size,即进程保留内存量,较大,内存泄露
 
 

5.网络分析方法

发送和接收字节的速率,将它和网络带宽进行比较
 

二.应用服务器计数器和分析(分J2EE和IIS)

主要看J2EE
JVM   1.堆大小
          2.可用堆大小
JDBC 连接池   1.等待的连接数量 ,该值大的话,增加JDBC连接池大小
                        2.JDBC总连接数
                        3.JDBC连接池的总容量    
                        4.活跃的JDBC连接数
                    均是 获取合理的JDBC连接池设置,提高利用率
执行队列 
  1.                 空闲线程数量
  2.                 队列请求的最长时间,判断有无明显阻塞
  3.                 已处理的请求总数
  4.                 挂起数量

 三.数据库计数器和分析

系统:1.Total Processor Time:数据库进程占用的CPU时间
           2.User Connections:当前用户连接数   超出连接数可能直接被拒绝或者其他异常
 
内存:1.Cache Hit Ratio:缓存命中率。命中率较小,而数据库繁忙,可以调整缓存大小
          2.Total server Memory:SQL server 数据库进程使用的内存
 
锁:1.Average Wait Time:锁平均等待时间
       2.Lock Requests/sec : 每秒锁请求数
       3.Number of DeadLock /sec 每秒死锁数:较大需要排查
 
IO:1.被挂起的物理读写,挂起值大,可能是CPU或者磁盘I/O产生瓶颈
  1. 每秒页面读写数
       3.每秒事务数
 

推荐阅读