当前位置:网站首页>JVM visualvm: multi hop fault handling tool
JVM visualvm: multi hop fault handling tool
2022-07-24 11:32:00 【Carefree hero】
VisualVM What is it? ?
VisualVM(All-in-One Java Troubleshooting Tool) It is one of the most powerful operation monitoring and fault handling programs , It used to be... For a long time Oracle Official failure handling tools for virtual machines .
VisualVM What can be done ?
VisualVM Can run monitoring 、 Troubleshooting , Other capabilities will also be provided , For example, performance analysis (Profiling).VisualVM Compared with JProfiler、YourKit Etc. professional and charged Profiling Tools are no less than .
VIsualVM function
Show virtual machine processes and process configuration 、 environmental information (jps、jinfo).
· Monitor the application's processor 、 garbage collection 、 Pile up 、 Method area and thread information (jstat、jstack).
·dump And analyze heap dump snapshot (jmap、jhat).
· Method level program performance analysis , Find the most called 、 The longest way to run .
· Offline program snapshot : Collect the runtime configuration of the program 、 Threads dump、 Memory dump Wait for the information to create a snapshot , You can send the snapshot to the developer Bug feedback .
· The unlimited possibilities of other plug-ins .
Download and install
https://visualvm.github.io/index.html


decompression
Get into etc open visualvm.conf

edit jdk Lu Jin , Your own jdk Lu Jin

function


Installing a plug-in
https://visualvm.github.io/pluginscenters.html


toos->plugins-> Change address
iy uj


Download plug-ins
Note that if it is a virtual machine, use the virtual machine to download


tools->Plugins->Downloaded

Import the plug-in and install, And on again VigualVM

If necessary, you can also install others

idea Installing a plug-in
Get into settings->plugins->Browse Repositories Search for :VisualVM


Configure road force operation and jdk Catalog

Run selection


Related instructions :
Pile up (Heap) :JVM The managed memory is called heap
generational : According to the life cycle of the object , Divide the heap into 3 Generations :Young,Old and Permanent, Different collection algorithms are adopted according to the characteristics of different generations , Develop strengths and avoid weaknesses .
Young( The younger generation )
The younger generation is divided into three sections . One Eden District , Two Survivor District . Most objects in Eden In the region . When Eden Area is full , Surviving objects will be copied to Survivor District ( One of the two ), When this Survivor Area is full , The surviving object in this section will be copied to another Survivor District , When this Survivor When the district is full , From the first Survivor The copied object that is still alive at this time , Will be copied “ Years old (Tenured)”. We need to pay attention to ,Survivor The two regions are symmetric , It doesn't matter , So it's possible to have a slave in the same region at the same time Eden Copy the object , And the old one Survivor The copied object , And the only copy to the old area is from the first one Survivor The copied object . and ,Survivor One of the sections is always empty .
Tenured( The old generation )
The old store objects that survive from the young . Generally speaking, the objects stored by the old generation are the objects with longer life span .
Perm( Lasting generation )
For storing static files , Now Java class 、 Such method . Persistence has no significant effect on garbage collection , But some applications may dynamically generate or call some class, for example Hibernate etc. , In this case, you need to set up a large persistence generation space to store the newly added classes in the running process . Persistent generation size through -XX:MaxPermSize= Set it up .
Metaspace( Meta space )
With JDK8 The arrival of the ,JVM No more Perm. But the metadata information of the class (metadata) still , It's just that it's no longer stored in contiguous heap space , It's moving to something called “Metaspace” Local memory of (Native memory) in . The essence of meta space is similar to permanent generation , All right. JVM Implementation of method area in specification . But the biggest difference between Metaspace and permanent generation is : The meta space is not in the virtual machine , It's using local memory .
Thread view

CPU see


Generate dump

Last
use visualvm To analyze the performance of applications is also a very useful tool , Before the open source tools of cloud services and major platforms came out , This tool has always been treated as an artifact , Now, some of the analysis tools provided by major cloud services are more convenient 、 More efficient, so visualvm Although not the same as before, it is regarded as a requirement for performance analysis , But the value of this tool is still very high , Students in need can understand and master by themselves , Maybe this artifact will be used when upgrading to fight monsters .
Reference article :
https://blog.csdn.net/xlecho/article/details/103814673
https://www.ibm.com/developerworks/cn/java/j-lo-visualvm/

边栏推荐
- Why can't memset initialize array elements to 1?
- Hash - 242. valid alphabetic ectopic words
- 【反序列化漏洞-02】PHP反序列化漏洞原理测试及魔术方法总结
- Simply use MySQL index
- RetinaNet:Focal Loss for Dense Object Detection
- ctfshow ThinkPHP专题 1
- Online customer service chat system source code_ Beautiful and powerful golang kernel development_ Binary operation fool installation_ Construction tutorial attached
- Talk about software testing - automated testing framework
- 【Golang】golang实现发送微信服务号模板消息
- Win10 icon turns white, recovery method
猜你喜欢

Robot framework official tutorial (I) getting started

有关并行的两个重要定律
什么是云原生,云原生技术为什么这么火?

2022, the average salary of the soft tester, after reading it, I was instantly cool

链表——剑指offer面试题 02.07. 链表相交

Performance test summary (I) -- basic theory

这才是开发者神器正确的打开方式!

Linked list - 142. Ring linked list II

How to go from functional testing to automated testing?
](/img/1f/37c5548ce84b6a217b4742431f1cc4.png)
运算放大器 —— 快速复苏笔记[壹](参数篇)
随机推荐
【10】 Teamwork and cross team collaboration
RetinaNet:Focal Loss for Dense Object Detection
The U.S. Department of Homeland Security launched an investigation into the electronic communication records deleted by the secret service during the riots in the Capitol
哈希——349. 两个数组的交集
In BS4.String and Difference between text
Database operation through shell script
Stack Title: basic calculator II
Talk about software testing - automated testing framework
【Golang】golang实现urlencode urldecode函数
Stm32+esp8266+mqtt protocol connects Alibaba cloud Internet of things platform
Jmeter-If控制器
[markdown grammar advanced] make your blog more exciting (IV: set font style and color comparison table)
07【Path、Files类的使用】
tcp 服务端接收数据处理思路梳理,以及select: Invalid argument报错 笔记
JPS has no namenode and datanode reasons
【反序列化漏洞-02】PHP反序列化漏洞原理测试及魔术方法总结
Classification and introduction of arm and series processors
IT圈中的Bug的类型与历史
Imeta view | is short reading long amplicon sequencing applicable to the prediction of microbiome function?
What is the difference between strong reference, soft reference, weak reference and virtual reference?