给做性能问题的诊断需要用到的工具分一下类的话,主要有以下类,网络通信报文抓取工具、基础软件监控工具、第三方资源监控工具、专业性能诊断工具和反编译工具。
接下来我们就分别说说,每类里面都有哪些工具。首先第一类是网络通信报文抓取工具,目前主要用到的是应用层报文抓取工具HTTPWatch和传输层报文抓取工具Wireshark。
基础软件监控工具包括操作系统监控工具、数据库监控工具、中间件监控工具、程序运行环境监控工具、容器监控工具。
操作系统监控工具
Linux操作系统监控工具(top、iostat、vmstat等)。
Windows操作系统监控工具(Perfmon等)。
AIX、HP-UNIX等UNIX操作系统监控工具(top、topas、iostat等)
中间件监控工具
应用服务器监控工具(Weblogic、Tomcat)。
Web服务器监控工具(Apache、Nginx)。
消息服务器监控工具(MQ、Kafka)。
数据库监控工具
Oracle数据库监控工具(AWR、性能视图、SQL执行计划)。
SQL Server数据库监控工具(Perfmon、SQL Profiler 、SQL执行计划)。
MySQL数据库监控工具(MONyog、SQLyog 、SQL执行计划)
DB2数据库监控工具(Db2pd)。
容器监控工具
Docker监控工具(Prometheus、Docker stats)。
第三方资源监控工具主要有第三方系统运维工具Nagios,操作系统监控工具NMON,数据库监控工具Spotlight,专项监控工具(进程分析)。
反编译工具主要有Java反编译工具(jad、JD-GUI、Java Decompiler)和.Net Framework反编译工具(.NET Reflector、JustDecompile)
再就是像Diagnostics、Dynatrace、Wily、Jprobe、Jprofiler这些专业的性能测试诊断工具。