深入JVM-性能监控工具
一、Linux下的性能监控工具
1.1 显式系统整体资源使用情况-top命令

top命令的输出可以分为两个部分:前半部分是系统统计信息,后半部分是进程信息。
在统计信息中,第一行是任务队列信息,他的结果等同于uptime命令。从左到右以此表示:系统当前时间、系统运行时间、当前登录用户数。最后的load average表示系统的平均负载,即任务队列的平均长度,这三个值分别表示1分钟、5分钟、15分钟到现在的平均值。
第二行是进程统计信息,分别有正在运行的进程数、睡眠进程数、停止的进程数、僵尸进程数。
第三行是CPU统计信息,us表示用户空间CPU占用率、sy表示内和空间CPU占用率、ni表示用户进程空间改变过优先级的进程CPU的占用率、id表示空闲CPU占用率、wa表示等待输入输出的CPU时间百分比、hi表示硬件中断请求、si表示软件中断请求。在Mem行中,从左到右,依次表示物理内存总量、yi'shi'y已使用的物理内存、空闲物理内存、内核缓冲使用量。Swap行依次表示交换区总量、空闲交换区大小、缓冲交换区大小。
top命令的第二部分是进程信息区,显示了系统内各个进程的资源使用情况。
- PID:进程id
- USER:进程所有者的用户名
- PR:优先级
- NI:nice值,负值表示高优先级,正值表示低优先级
- %CPU:上次更新到现在的CPU时间占用百分比
- TIME+:进程使用的CPU时间总计,单位1/100秒
- %MEM:进程使用的物理内存百分比
- VIRT:进程使用的虚拟内存总量,单位kb,VIRT=SWAP+RES
- RES:进程使用的、未被换出的物理内存大小,单位kb,RES=CODE+DATA
- SHR:共享内存大小,单位kb
- COMMAND:命令名/命令行
1.2 监控内存和CPU-vmstat命令

1.3 监控IO使用-iostat命令
iostat -d 1 2
-d表示输出磁盘使用情况,输入结果中各列的含义如下:
- tps:该设备每秒的传输次数
- kB_read/s:每秒从设备读取的数据量
- kB_wrtn/s:每秒向设备写入的数据量
- kB_read:读取的总数据量
- kB_wrtn:写入的总数据量
二、windows下的性能监控工具
2.1 任务管理器
2.2 perform性能监控工具
“运行”输入perform启动即可。
2.3 Process Explorer 进程管理工具
2.4 pslist命令
三、JDK性能监控工具
3.1 查看Java进程-jps
3.2 查看虚拟机运行时信息-jstat命令
3.3 查看虚拟机参数-jinfo命令
3.4 导出堆到文件-jmap命令
3.5 JDK自带的堆分析工具-jhat命令
3.6 查看线程堆栈-jstack命令
3.7 远程主机信息收集-jstatd命令
3.8 多功能命令行-jcmd命令
3.9 性能统计工具-hprof
四、图形化虚拟机监控工具JConsole
五、可视化性能监控工具Visual VM
深入JVM-性能监控工具的更多相关文章
- JVM性能监控工具(一)-jdk命令行工具
转载:http://blog.csdn.net/top_code/article/details/51456186 当系统出bug需要定位问题的时候,知识.经验是关键基础,数据是依据,工具是运用知识处 ...
- 深入理解JVM—性能监控工具
(转自:http://yhjhappy234.blog.163.com/blog/static/31632832201222691738865/) 我们知道,在JVM编译期和加载器,甚至运行期已经做了 ...
- JVM性能监控工具-Jvisualvm
用法:Jvisualvm是JDK自带的一款性能分析工具 使用方式: 1.配置好JDK环境变量 1.本地JVM监控略 2.远程JVM监控 用JMX对Resin内存状态进行监控 ,可以看到本地所有可监控的 ...
- jvm性能监控工具
jvm可能存在的问题: OutOfMemoryError:内存不足 内存泄露 线程死锁 锁竞争(Lock Contention) Java消耗过多的CPU 一.jps(j ...
- java堆栈信息查看,以及JVM性能查看工具-jconsole+jmap
java-core P487 P515 chapter11,主要讲java的异常,里面很多内容收获良多,之前一直没注意过的. 一,Throwable类获得StackTraceElement ,可进行 ...
- JVM性能调优监控工具jps、jstack、jmap、jhat、jstat、hprof使用详解
摘要: JDK本身提供了很多方便的JVM性能调优监控工具,除了集成式的VisualVM和jConsole外,还有jps.jstack.jmap.jhat.jstat.hprof等小巧的工具,本博客希望 ...
- JVM性能调优监控工具jps、jstack、jmap、jhat、jstat使用详解(转VIII)
JVM本身就是一个java进程,一个java程序运行在一个jvm进程中.多个java程序同时运行就会有多个jvm进程.一个jvm进程有多个线程至少有一个gc线程和一个用户线程. JDK本身提供了很多方 ...
- 《转》:JVM性能调优监控工具jps、jstack、jmap、jhat、jstat、hprof使用详解
原链接:https://my.oschina.net/feichexia/blog/196575 现实企业级Java开发中,有时候我们会碰到下面这些问题: OutOfMemoryError,内存不足 ...
- JVM学习03:性能监控工具
JVM学习03:性能监控工具 写在前面:本系列分享主要参考资料是 周志明老师的<深入理解Java虚拟机>第二版. 性能监控工具知识要点Xmind梳理 案例分析 案例分析1-JPS 案例分 ...
- 【转】JVM性能调优监控工具jps、jstack、jmap、jhat、jstat使用详解
http://www.cnblogs.com/therunningfish/p/5524238.html JDK本身提供了很多方便的JVM性能调优监控工具,除了集成式的VisualVM和jConsol ...
随机推荐
- android之Activity回传数据
约定:当Activity发生跳转时将原来的Activity成为父Activity,将新出现的Activity成为子Activity. 情景设置 下面是个发短信的Activity 当我们点击图中的+按钮 ...
- jq mobile非ajax加载,ready执行两次
jqm只有通过ajax加载的页面才只执行一次ready(正常情况) 页面刷新(同非ajax加载的页面)都会执行两次ready,包括pageinit和pageshow事件也是如此. 两种避免的方法是: ...
- C/C++中NULL的涵义
参考:百度知道NULL表示空指针,用于表示一个无效的指针,它的值为0(早期C语言的实现中可能有非0空指针,现在已经不用).对指针置NULL即标记指针无效,避免“野指针”的恶果.NULL在C/C++标准 ...
- 第一天的作业,登录接口脚本 login.py
user_list = [] count = 0 user = "liruixin" password = " raw_user = raw_input("us ...
- java中的hashSet和Treeset的分析
hashset中的元素 treeset中的元素要实现comparable接口
- XML与 HTML
XML是E4X中定义的一个重要的新类型,侧重于如何结构化描述信息,用它来表现XML结构中任何独立的部分,是一种用于标记电子文件使其具有结构性的标记语言. XML语言被设计用来描述数据,它的焦点是数据的 ...
- leetcode(一)Word Pattern
题目描述: Given a pattern and a string str, find if str follows the same pattern. Here follow means a fu ...
- ES6新特性:Proxy代理器
ES6新特性:Proxy: 要使用的话, 直接在浏览器中执行即可, node和babel目前还没有Proxy的polyfill;,要使用的话,直接在浏览器中运行就好了, 浏览器的兼容性为:chrome ...
- hdu1161 欧拉路
欧拉路径是指能从一个点出发能够“一笔画”完整张图的路径:(每条边只经过一次而不是点) 在无向图中:如果每个点的度都为偶数 那么这个图是欧拉回路:如果最多有2个奇数点,那么出发点和到达点必定为该2点,那 ...
- httpclient提示Cookie rejected: violates RFC 2109: domain must start with a dot
使用httpclient时发生如下告警信息: WARN - HttpMethodBase.processResponseHeaders(1505) | Cookie rejected: "$ ...