OS

1、CPU

用户态时间(us):cpu执行应用代码所占时间的百分比。

内核态时间(sy):cpu执行内核代码所占时间的百分比,系统态时间与应用相关。

空闲时间(id):cpu空闲时间百分比。空闲可能的原因:

    1、应用被同步原语阻塞、等待锁释放

    2、应用等待某些东西,例如:查询数据库并等待返回结果

    3、应用的确无所事事

运行队列(r):所有正在运行和就绪状态(一旦有可用cpu就可以运行)的线程数。该数据最好小于或等于CPU个数,否则性能就可能会下降。如果长时间运队列过长,则可能是系统过载。

命令:vmstat 1  一秒内的CPU的占比

调优的目的:在尽可能短的时间内让cpu的利用率尽可能高。

2、IO

命令:iostat -xm 5

%util:IO时间占总时间的百分比。暗示了设备的繁忙程度。一般地,达到100%时表示设备已经接近满负荷运行了(如果是多磁盘,即使100%,由于磁盘的并发能力,索引磁盘未必达到瓶颈)

r/s和w/s:每秒读/写次数

rMB和wMB/s:每秒读/写大小

await:IO平均等待时间

Java

1、VM信息

  jcmd可用来查找运行的应用所在JVM的基本信息,包括所有调优标识的值。

  jcmd 56062 VM.uptime 虚拟机运行时长

  jcmd 56062 VM.system_properties  虚拟机系统属性

  jcmd 56062 VM.system_version  JVM版本

  jcmd 56062 VM.command_line  JVM命令行

  jcmd 56062 VM.flags  [-all]  JVM调优标识

  

  java -XX:+PrintFlagsInitial 可输出标志的默认值。

  jinfo在检查单个标志时(可以修改标记为manageable的标志)很有用。

  jinfo -flags 56062 获取进程中所有标志的值

  jinfo -flag PrintGCDetails 56062 获取单个标志的值

2、线程信息

  jstack 56062 或 jcmd 56062 Thread.print

3、类信息和实时GC

  jstat

4、堆转储

  jmap

性能分析工具

1、采样分析器

2、探查分析器

3、本地方法和线程时间线

4、本地分析器

《Java性能权威指南》笔记----Java性能调优工具的更多相关文章

  1. Java虚拟机(六):JVM调优工具

    工具做为图形化界面来展示更能直观的发现问题,另一方面一些耗费性能的分析(dump文件分析)一般也不会在生产直接分析,往往dump下来的文件达1G左右,人工分析效率较低,因此利用工具来分析jvm相关问题 ...

  2. 《深入理解Java虚拟机》(五)JVM调优 - 工具

    JVM调优 - 工具 JConsole:Java监视与管理控制台 JConsole是一个机遇JMX(Java Management Extensions,即Java管理扩展)的JVM监控与管理工具,监 ...

  3. 【Java/Android性能优2】Android性能调优工具TraceView介绍

    本文参考:http://www.trinea.cn/android/android-traceview/ Android自带的TraceView堪比java的性能调优工具visualvm线程视图,可以 ...

  4. 第六章 Java性能调优工具(待续)

    Java性能调优工具 Windows工具 JDK命令行工具 JConsole工具 Visual VM多合一工具 Visual VM对QQL的支持 MAT内存分析工具 MAT对QQL的支持 JProfi ...

  5. 经典的性能优化最佳实践 web性能权威指南 读书笔记

    web性能权威指南 page 203 经典的性能优化最佳实践 无论什么网络,也不管所用网络协议是什么版本,所有应用都应该致力于消除或减 少不必要的网络延迟,将需要传输的数据压缩至最少.这两条标准是经典 ...

  6. HTTP 1.x 学习笔记 —— Web 性能权威指南

    HTTP 1.0的优化策略非常简单,就一句话:升级到HTTP 1.1.完了! 改进HTTP的性能是HTTP 1.1工作组的一个重要目标,后来这个版本也引入了大量增强性能的重要特性,其中一些大家比较熟知 ...

  7. java性能调优工具

    windows调优工具: 任务管理器(ctrl+alt+delete或).资源管理器(任务管理器->性能进入或运行resmon.exe):JVM分析工具Jconsole,jProfile,Vis ...

  8. 《Web性能权威指南》

    <Web性能权威指南> 基本信息 原书名:High performance browser networking 原出版社: O'Reilly Media 作者: (加)Ilya Grig ...

  9. Web性能权威指南 PDF扫描版​

    Web性能权威指南是谷歌公司高性能团队核心成员的权威之作,堪称实战经验与规范解读完美结合的产物.<Web性能权威指南>目标是涵盖Web开发者技术体系中应该掌握的所有网络及性能优化知识.全书 ...

  10. web性能权威指南(High Performance Browser Networking)

    web性能权威指南(High Performance Browser Networking) https://www.cnblogs.com/qcloud1001/p/9663524.html HTT ...

随机推荐

  1. Java - 通过私有构造方法获取实例

  2. Ansible学习 Inventory文件

    Ansible可同时操作属于一个组的多台主机,组与主机之间关系配置在inventory文件中,inventory默认的配置文件是/etc/ansible/hosts 1.在/etc/ansible/h ...

  3. 20190102(多线程,守护线程,线程互斥锁,信号量,JoinableQueue)

    多线程 多进程: 核心是多道技术,本质上就是切换加保存技术. 当进程IO操作较多,可以提高程序效率. 每个进程都默认有一条主线程. 多线程: 程序的执行线路,相当于一条流水线,其包含了程序的具体执行步 ...

  4. C++ vector 实例

    #include <string> #include <iostream> #include <vector> #include <algorithm> ...

  5. keil swd设置下载stm32f103c8t6.

    1.debug选项,选择jlink,2.utilities选择jlink3.加载flash算法.4.选择swd模式,其他基本上默认,这样就可以下载了对rom和ram设置需要说明一下:1,IROM1,前 ...

  6. [转]webservice 采用SSL实现加密传输

    本文转自:http://book.51cto.com/art/200906/129770.htm http://yeweiyun868.blog.163.com/blog/static/5637844 ...

  7. 11,scrapy框架持久化存储

    今日总结 基于终端指令的持久化存储 基于管道的持久化存储 今日详情 1.基于终端指令的持久化存储 保证爬虫文件的parse方法中有可迭代类型对象(通常为列表or字典)的返回,该返回值可以通过终端指令的 ...

  8. as API一些容易忘记的属性和方法

    1.在flash动画里的一些动态文本会随着动画的执行,有抖动,解决问题的方法: tt为动画里的动态文本,tt.transform.matrix=null;

  9. BZOJ 4393: [Usaco2015 Dec]Fruit Feast

    DP #include<cstdio> using namespace std; int T,A,B,F[5000005],G[5000005]; int main(){ scanf(&q ...

  10. laravel5.2总结--序列化

    序列化 构建Json格式的API接口时,经常需要转换 '模型' 和 '关联关系' 为数组或者JSON. 1>转换模型为数组:   $user = App\User::with('roles')- ...