周末看到一个用jstack查看死锁的例子。昨天晚上总结了一下jstack(查看线程)、jmap(查看内存)和jstat(性能分析)命令。 1.1.Jstack 1.1 jstack能得到运行java程序的java stack和native stack的信息。可以轻松得知当前线程的运行情况。如下图所示
转载
2016-11-10 19:45:00
383阅读
2评论
查询、监控、分析Java应用程序的时候,我们关注的点主要集中在资源利用,比如CPU,内存,IO,线程等。其中内存以及线程的分析尤为常见。内存,是否有内存泄漏,各个区块内存分配是否大小合适。线程,数目是否合理,有没有死锁,运行状态如何。 jps -vljps是JDK提供的一个小工具,上面的命令会把操作系统里面的java应用都展示出来,显示PID,启动类或者JAR,VM参数。可以通过jps -he
转载
2018-02-26 16:29:00
366阅读
2评论
进行jvm内存分析可以排查存在和潜在的问题。通过借助jdk自带的常用工具,可以分析大概可能的问题定位以及确定优化方向。JVM内存分析有很多好处。内存泄漏排查:JVM 内存泄漏是指应用程序中的对象占用的内存无法被垃圾回收器释放,导致内存占用持续增长,最终耗尽可用内存。通过内存分析工具,可以检测到哪些对象占用了大量内存且无法被释放,进而定位到可能存在内存泄漏的代码。内存优化:合理优化 JVM 内存配置
目录jps--虚拟机进程查看工具jstat--虚拟机统计监视工具jinfo--虚拟机配置信息工具jmap--虚拟机内存映象工具jhat--虚拟机HeapDump分析工具jstack--java堆栈跟踪工具Jconsole和VisualVMvisualVM分析OutOfMemoryError异常jdk本身为我们定位java相关的生产问题提供了内置的工具,这些内置的工具用好了足以应对常见的大多数生产问
转载
2023-08-14 20:01:20
485阅读
1、首先在自己电脑上安装JDK,安装好后,到安装目录bin下面找到jvisualvm.exe应用程序,运行它。2、右键“远程”“添加远程主机”添加结束以后,在tomcat主机的bin/startup.sh最后一行的前面添加如下参数:# this jmx export CATALINA_OPTS="$CATALINA_OPTS -Dcom.sun.management.jm
原创
2015-10-15 17:04:44
619阅读
JVM虚拟机可分析文件如下:异常堆栈GC日志线程快照(threaddump/javacore文件)堆转储快照(heapdump/hprof文件) 注意:分析dump文件的工具:Eclipse Memory Analyzer、
IBM HeapAnalyzer [2]、
VisualVM 1、jps (JVM Process Status Tools)显示系统中所有HotSpot虚拟
解决常规的JVM异常时,通常依赖JDK中基础工具即可完成问题的,从而进行分析和解决,不过这些需要对基础工具熟练使用才行,而很多JDK自身的能力又是经常被忽略的;
推荐
原创
2022-10-25 08:24:03
321阅读
很多开发者觉得自己懂Java编程,事实是大多数开发人员都只领会到了Java平台的皮毛,所学也只够应付工作。
原创
2022-08-20 01:15:51
122阅读
一、业务背景对于分布式架构中的文件服务来说,由于涉及大量的IO流操作,很容易引发JVM的相关异常,尤其是内存溢出的问题;在最近的一次版本迭代中,真实的业务处理场景和上述几乎一致,由于在文件服务中添加批量处理的动作,直接唤醒了隐藏许久的BUG,就是最常见的内存溢出;问题的起因:在word文档完成内容识别后,转换为pdf文件,然后进行页面分割转为一组图片,在这个复杂并且超长的流程中存在一个数组容器未销
原创
精选
2022-10-25 11:02:12
215阅读
内存监控工具综述jpsjstackjmapjhatjstat 综述JDK本身提供了很多方便的JVM性能调优监控工具,除了集成式的VisualVM和jConsole外,还有jps、jstack、jmap、jhat、jstat等小巧的工具。 1,VisualVM的使用 在安装java文件的bin目录下有jvisualvm程序 在eclipse和tomcat启动的情况下,双击打开该程序得到如下界面 工
转载
2023-07-20 11:59:25
2871阅读
jstatJstat是JDK自带的一个轻量级小工具。全称“Java Virtual Machine statistics monitoring tool”,它位于java的bin目录下,主要利用JVM内建的指令对Java应用程序的资源和性能进行实时的命令行的监控,包括了对Heap size和垃圾回收状况的监控。可见,Jstat是轻量级的、专门针对JVM的工具,非常适用。jstat工具特别强大,有众
转载
2023-08-19 23:41:11
107阅读
JDK自带JVM分析工具详解1. JVM分析工具概述1.1 JVM分析工具简介1.2 JVM分析工具分类2. JVM分析工具详解2.1 idea环境配置2.2 jps2.3 jinfo2.4 jvisualvm2.5 jconsole2.6 jstat2.7 jstack2.8 jcmd2.9 jmap 1. JVM分析工具概述1.1 JVM分析工具简介在日常应用开发过程中对JVM状态指标等健康
转载
2023-09-21 09:04:08
98阅读
在jdk的bin目录下有跟多的 *.exe命令行工具,这些工具非常强大可以监控虚拟机和故障处理。工具名称作用描述jpsJVM进程状态工具(JVM Process Status Tool)用于显示目标系统上JVM的java进程jstatJVM统计监测工具(JVM Statistics Monitoring Tool)主要用于监测显示JVM的性能统计信息jinfojava配置信息工具(JA
在工作中可能会遇到内存溢出这种灾难性的问题,那么程序肯定是存在问题,找出问题至关重要,上一篇文章讲了jmap命令的使用方法,当然用jmap导出的文件我们也看不懂啊,那就交给memory analyzer(mat)这个工具,让他帮助我们来观察程序的内存分布情况吧。 1. 用jmap生成堆信息2. 将堆信息导入到mat中分析 3. 生成分析报告H
转载
2023-08-25 17:28:17
95阅读
Java自带的性能监测工具用法简介——jstack、jconsole、jinfo、jmap、jdb、jsta、jvisualvmJDK内置工具使用一、javah命令(C Header and Stub File Generator)二、jps命令(Java Virtual Machine Process Status Tool)三、jstack命令(Java Stack Trace)四、jstat
目录1 JPS查看java进程1 命令格式2 option参数3 示例2 jstat监视虚拟机运行时状态信息2.1 命令格式2.2 参数2.3 option 参数总览2.4 option 参数详解2.4.1 -class2.4.2 -compiler2.4.3 -gc2.4.4 -gccapacity2.4.5 -gcutil2.4.6 -gccause2.4
原创
2022-02-17 18:13:11
425阅读
内存溢出,妥妥的名场面;一、业务背景对于分布式架构中的文件服务来说,由于涉及大量的IO流操作,很容易引发JVM的相关异常,尤其是内存溢出的问题;在最近的一次版本迭代中,真实的业务处理场景和上述几乎一致,由于在文件服务中添加批量处理的动作,直接唤醒了隐藏许久的BUG,就是最常见的内存溢出;问题的起因:在word文档完成内容识别后,转换为pdf文件,然后进行页面分割转为一组图片,在这个复杂并且超长的流
一个很强大的免费工具:JDK6自带的jvisualvm。其实还有个自带工具 jconsole 这里不多说, 用法跟 jvisualvm 差不多。 都是输入命令启动这个东西我以前听过说,但一直没有用过。看到它提供的截图中可以看到各线程的运行状态,所以准备试一下。这里记录一下使用过程。1。启动在命令行输入jvisualvm。如果jdk安装正确的话(6.x以上版本),就会看到如下的一个窗口
原创
2013-12-06 13:34:00
2082阅读
一、概述
SUN 的JDK中的几个工具,非常好用。秉承着有免费,不用商用的原则。以下简单介绍一下这几种工具。(注:本文章下的所有工具都存在JDK5.0以上版本的工具集里,同javac一样,不须特意安装) 。
&n
转载
精选
2013-01-18 13:53:21
519阅读
有时候碰到服务器CPU飙升或者程序卡死之类的问题,一般都不太好定位。这类bug一般都隐藏的比较深并且还可能是偶发性的,比较棘手。
原创
2022-04-25 12:30:32
10000+阅读