• jvm经常使用命令行参数


    jps    查看java进程的PID
    java -XX:+PrintFlagsInitial    显示所有可设置参数及默认值
    java -XX:+PrintFlagsFinal    获取到所有可设置参数及值(手动设置之后的值)
    java -XX:+PrintCommandLineFlags    显示出JVM初始化完毕后所有跟最初的默认值不同的参数及它们的值
    jmap -histo [pid]    查看java堆上的对象分布情况
    java用法: java [-options] class [args...](执行类)或 java [-options] -jar jarfile [args...](执行 jar 文件)
    譬如:java -cp . -Xmx3G -Xmn2G -server -XX:-TieredCompilation AppMain
    [-options]
        -d32 使用 32 位数据模型 (如果可用)
        -d64 使用 64 位数据模型 (如果可用)
        -server 选择 "server" VM,默认 VM 是 server
        -cp <目录和 zip/jar 文件的类搜索路径>
        -classpath <目录和 zip/jar 文件的类搜索路径>,用 : 分隔的目录, JAR和 ZIP列表, 用于搜索类文件。
        -D<名称>=<值> 设置系统属性
        -verbose:[class|gc|jni] 启用详细输出
        -version 输出产品版本并退出
        -showversion 输出产品版本并继续
        -Xdiag 显示附加诊断消息
        -Xnoclassgc 禁用类垃圾收集
        -Xincgc 启用增量垃圾收集
        -Xloggc:<file> 将 GC 状态记录在文件中 (带时间戳)
        -Xbatch 禁用后台编译
        -Xms<size> 设置初始 Java 堆大小
        -Xmx<size> 设置最大 Java 堆大小
        -Xss<size> 设置 Java 线程堆栈大小
        -Xprof 输出 cpu 配置文件数据
        -XshowSettings 显示所有设置并继续
        -XshowSettings:all 显示所有设置并继续
        -XshowSettings:vm 显示所有与 vm 相关的设置并继续
        -XshowSettings:properties 显示所有属性设置并继续
        -XshowSettings:locale 显示所有与区域设置相关的设置并继续
        -XX:-UseBiasedLocking    关闭偏向锁默认会进入轻量级锁状态
        -XX:-DoEscapeAnalysis 关闭逃逸分析
        -XX:-TieredCompilation 关闭分层编译
        -XX:-BackgroundCompilation 关闭异步编译
        -XX:CompileThreshold 方法调用次数或循环次数达到这个阈值就会触发标准编译(client:1500,server:10000)
    ps:

    触发OSR编译的阈值计算(OSR编译就是只编译该循环代码不编译类的其他方法)
    -XX:CompileThreshold = 10000
    -XX:OnStackReplacePercentage = 140
    -XX:InterpreterProfilePercentage = 33
    OSR trigger = (CompileThreshold * (OnStackReplacePercentage - InterpreterProfilePercentage)) / 100 = 10700
    JIT编译在默认情况是异步进行的,当触发某方法或某代码块的优化时,先将其放入编译队列,然后由编译线程进行编译,编译之后的代码放在CodeCache中,CodeCache的大小也是有限的,CompileThreshold设置的太低,JIT会将一大堆执行不那么频繁的代码进行编译,并放入CodeCache,导致之后真正执行频繁的代码没有足够的空间存放。

     
  • 相关阅读:
    MOSS中的User的Title, LoginName, DisplayName, SID之间的关系
    如何在Network Monitor中高亮间隔时间过长的帧?
    SharePoint服务器如果需要安装杀毒软件, 需要注意什么?
    如何查看SQL Profiler? 如何查看SQL死锁?
    什么是Telnet
    The name or security ID (SID) of the domain specified is inconsistent with the trust information for that domain.
    Windows SharePoint Service 3.0的某个Web Application无搜索结果
    网络连接不上, 有TCP错误, 如果操作系统是Windows Server 2003, 请尝试一下这里
    在WinDBG中查看内存的命令
    The virtual machine could not be started because the hypervisor is not running
  • 原文地址:https://www.cnblogs.com/nizuimeiabc1/p/14409769.html
Copyright © 2020-2023  润新知