Jprofiler is a commercially licensed Java profiling tool primarily for Java EE and javase application development. It combines the profiling of CPUs, threads, and memory in a powerful application. Jprofiler provides many IDE consolidation and application server consolidation purposes. Jprofiler is a standalone application, but it provides plug-ins for Ides such as Eclipse and IntelliJ. It allows two memory profiles to evaluate memory usage and dynamically allocate leaks and CPU profiling to evaluate thread conflicts. Jprofiler Intuitive GUI allows you to find performance bottlenecks, capture memory leaks, and solve thread problems. It allows you to root analysis of the heap Walker as a resource collector, so you can easily find out memory leaks, heap snapshot (snapshot) mode lets unreferenced (reference) objects, slightly referenced objects, Or the object in the end (finalization) queue is removed, and the wizard is integrated to parse the browser's Java plug-in functionality. The Jprofiler can monitor both local and remote JVMs for a variety of operating systems. Common features are: 1. Monitor for memory consumption and the number of object instances created to find out about the leak. 2. Monitor more CPU-intensive methods. 3. Monitor the blocking and deadlock of threads. 4. Monitor the time-consuming GC. Monitoring the local JVM requires installing the win version of Jprofiler, and monitoring the remote JVM needs to install Jprofiler's win version locally and install the Jprofiler Linux version on the server. Integrate Jprofiler into Eclipse ide:1 and select Session->ide Integrations from the main menu in Jprofiler. It is important to note that when you perform a plug-in installation, you need to turn off eclipse. If you are performing setup through the Jprofiler Setup Wizard, you need to complete the installation before you start eclipse. 2. Select the version of Eclipse. 3. Click "Integrate" to select the folder where Eclipse is located. Click OK. 4. Start Eclipse. 5. Configure Jprofiler in Eclipse. Click on the main menu,->windows->customize perspective->commands, find profile, select it, then click OK. 6. Run the test, select the main class of the system you want to test. Right-click the profile as, Java application to run. <1. Monitoring heap Memory Growth: Select the Telemetries menu on the left to view the heap memory situation. Green is free space, blue is used space (this refers to heap memory space). Here you can also view the space size of each area of the heap memory: par Eden Space CMS old Gen par Survivor space-xmx JVM maximum available memory-xms JVM drives memory, can be associated with XMX With-xmn young generation <2. View the number of instances of objects in memory: Select Live memory to view the number of instances of objects in memory, view the number of objects in memory, and identify objects that cannot be reclaimed. By long observation, you can find out which objects are not released. But not a certain number of the most instances are leaked, according to the business situation of specific analysis. In this case, it can be filtered by the package name, which shows only the classes you have developed, which is a useful feature. Right-click on the class you want to view, select the Add Selection to class Tracker option to view the instance number growth trend chart. <3. See who references the instance: Select Heap Walker and click the camera icon to start. Right click on select Use Selected Instances. Server-side Jprofiler agent loading principle: Jprofiler's Server Analysis Agent tool must be loaded by JVM parameters during the JVM startup phase. jdk1.4 used JVMTI before using jvmpi,1.5. The parameters are as follows: 1.4 to-xrunjprofiler 1.5--and-agentlib:jprofilerti These parameters tell the JVM that the Load Analysis Agent tool, followed by the string depending on the file name of the Jprofiler library you are using : Windows--Jprofilerti.dll Linux/unix---libjprofilerti.so by adding (colon-jvmpi) and (equals-JVMTI) you can pass parameters to the analysis agent. Example of Windows environment JVM startup parameters: (Directory for JPRofiler installation directory)-agentpath:c:\progra~1\jprofi~1\bin\windows\jprofilerti.dll=port=8849 Linux environment JVM Startup parameters Example: (Directory is Jprofil ER's installation directory)-agentpath:/opt/jprofiler7/bin/linux-x86/libjprofilerti.so=port=8849
Jprofiler Getting Started