• 深入理解java虚拟机


    第四章:java虚拟机命令行工具

    1:jps命令行进程状况工具      jps [options] [hostid]

    C:Userslenovo>jps -l
    13824 sun.tools.jps.Jps
    14224 org.jetbrains.jps.cmdline.Launcher
    8528 org.jetbrains.idea.maven.server.RemoteMavenServer
    12660 org.jetbrains.jps.cmdline.Launcher
    7316
    11544
    236 com.li.SpringBootLabApplication   //主类

    2:jstat 用于监视虚拟机各种运行状态信息的命令行工具。包括类装载,内存,垃圾收集,JIT编译等数据

    jstat [option vmid [interval [s|ms][count]]]    

    option 代表用户希望查询的虚拟机信息

    例如每250毫秒查询一次进程236的垃圾回收信息,查询20次

    3:jinfo 打印java配置信息

          打印进程

    jinfo 236的信息
    C:Userslenovo>jinfo 236
    Attaching to process ID 236, please wait...
    Debugger attached successfully.
    Server compiler detected.
    JVM version is 25.161-b12
    Java System Properties:
    
    java.runtime.name = Java(TM) SE Runtime Environment
    java.vm.version = 25.161-b12
    sun.boot.library.path = D:softwarejdkjdk8jdk1.8.0_161jrein
    java.vendor.url = http://java.oracle.com/
    java.vm.vendor = Oracle Corporation
    path.separator = ;
    file.encoding.pkg = sun.io
    java.vm.name = Java HotSpot(TM) 64-Bit Server VM
    sun.os.patch.level =
    sun.java.launcher = SUN_STANDARD
    user.script =
    user.country = CN
    user.dir = D:softwaregithubgithub下载laboratoryWeb
    java.vm.specification.name = Java Virtual Machine Specification
    PID = 236
    java.runtime.version = 1.8.0_161-b12
    java.awt.graphicsenv = sun.awt.Win32GraphicsEnvironment
    os.arch = amd64
    java.endorsed.dirs = D:softwarejdkjdk8jdk1.8.0_161jrelibendorsed
    org.jboss.logging.provider = slf4j
    line.separator =
    
    java.io.tmpdir = C:UserslenovoAppDataLocalTemp
    java.vm.specification.vendor = Oracle Corporation
    user.variant =
    os.name = Windows 10
    sun.jnu.encoding = GBK
    java.library.path = D:softwarejdkjdk8jdk1.8.0_161in;C:Userslenovo.gradlecachesmodules-2files-2.1org.ow2.asmasm5.0.3dcc2193db20e19e1feca8b1240dbbc4e190824faasm-5.0.3.jar;D:softwareideajideaIC-2017.3.4.winlibidea_rt.jar
    java.vm.specification.version = 1.8
    sun.arch.data.model = 64
    sun.java.command = com.li.SpringBootLabApplication
    java.home = D:softwarejdkjdk8jdk1.8.0_161jre
    user.language = zh
    java.specification.vendor = Oracle Corporation
    awt.toolkit = sun.awt.windows.WToolkit
    java.vm.info = mixed mode
    java.version = 1.8.0_161
    java.ext.dirs = D:softwarejdkjdk8jdk1.8.0_161jrelibext;C:WINDOWSSunJavalibext
    sun.boot.class.path = D:softwarejdkjdk8jdk1.8.0_161jrelib
    esources.jar;D:softwarejdkjdk8jdk1.8.0_161jreclasses
    java.awt.headless = true
    java.vendor = Oracle Corporation
    catalina.base = C:UserslenovoAppDataLocalTemp	omcat.6690132104814217884.9002
    file.separator = 
    java.vendor.url.bug = http://bugreport.sun.com/bugreport/
    sun.io.unicode.encoding = UnicodeLittle
    sun.cpu.endian = little
    sun.desktop = windows
    sun.cpu.isalist = amd64
    
    VM Flags:
    Non-default VM flags: -XX:CICompilerCount=3 -XX:InitialHeapSize=134217728 -XX:MaxHeapSize=2122317824 -XX:MaxNewSize=707264512 -XX:MinHeapDeltaBytes=524288 -XX:NewSize=44564480 -XX:OldSize=89653248 -XX:+UseCompressedClassPointers -XX:+UseCompressedOops -XX:+UseFastUnorderedTimeStamps -XX:-UseLargePagesIndividualAllocation -XX:+UseParallelGC
    Command line:  -javaagent:D:softwareideajideaIC-2017.3.4.winlibidea_rt.jar=50372:D:softwareideajideaIC-2017.3.4.winin -Dfile.encoding=UTF-8

    4:jmap: java内存映像工具

    例如显示 java堆详细信息

    jmap -heap 236

    C:Userslenovo>jmap -heap 236
    Attaching to process ID 236, please wait...
    Debugger attached successfully.
    Server compiler detected.
    JVM version is 25.161-b12
    
    using thread-local object allocation.
    Parallel GC with 4 thread(s)
    
    Heap Configuration:
       MinHeapFreeRatio         = 0
       MaxHeapFreeRatio         = 100
       MaxHeapSize              = 2122317824 (2024.0MB)
       NewSize                  = 44564480 (42.5MB)
       MaxNewSize               = 707264512 (674.5MB)
       OldSize                  = 89653248 (85.5MB)
       NewRatio                 = 2
       SurvivorRatio            = 8
       MetaspaceSize            = 21807104 (20.796875MB)
       CompressedClassSpaceSize = 1073741824 (1024.0MB)
       MaxMetaspaceSize         = 17592186044415 MB
       G1HeapRegionSize         = 0 (0.0MB)
    
    Heap Usage:
    PS Young Generation
    Eden Space:
       capacity = 195035136 (186.0MB)
       used     = 71367536 (68.06138610839844MB)
       free     = 123667600 (117.93861389160156MB)
       36.592143069031415% used
    From Space:
       capacity = 17825792 (17.0MB)
       used     = 17497968 (16.687362670898438MB)
       free     = 327824 (0.3126373291015625MB)
       98.16095688763787% used
    To Space:
       capacity = 14155776 (13.5MB)
       used     = 0 (0.0MB)
       free     = 14155776 (13.5MB)
       0.0% used
    PS Old Generation
       capacity = 112197632 (107.0MB)
       used     = 23719728 (22.620895385742188MB)
       free     = 88477904 (84.37910461425781MB)
       21.1410237249927% used
    
    24236 interned Strings occupying 2896624 bytes.
    
    C:Userslenovo>

    5:jhat   虚拟机堆转储快照分析工具

    6:jstack:    java堆栈跟踪工具

    7: hsdis  JIT生成代码反汇编

    可视化工具:

    通过jdk/bin目录下的  jconsole.exe启动jconsole,将搜索出所有本地运行的虚拟机进程。

        

             选择一个进程进行监控: 可查看各个状态的信息

  • 相关阅读:
    杭电 Problem
    杭电Problem 5053 the sum of cube 【数学公式】
    杭电 Problem 2089 不要62 【打表】
    杭电 Problem 4548 美素数【打表】
    杭电 Problem 2008 分拆素数和 【打表】
    杭电 Problem 1722 Cake 【gcd】
    杭电 Problem 2187 悼念512汶川大地震遇难同胞——老人是真饿了【贪心】
    杭电Problem 1872 稳定排序
    杭电 Problem 1753 大明A+B
    东北林业大 564 汉诺塔
  • 原文地址:https://www.cnblogs.com/liyafei/p/9131020.html
Copyright © 2020-2023  润新知