zoukankan      html  css  js  c++  java
  • JVM调优学习

    1. 调优的原则:

    合理编写代码

    合理利用硬件资源

    合理地进行条用

    2. JVM调优的宗旨:

    降低FULL GC的执行频次,减小GC的执行时间。

    3. 添加常用的参数:

    -XX:+HeapDumpOnOutOfMemoryError 默认关闭 在发生内存溢出异常时是否生成堆转储快照,

    -Xloggc:D:/gc.log 打印GC的日志到文件

    若为jdk1.8的编译器,设置垃圾回收器为G1

    -XX:+UseG1GC

    -Xmn2g 设置年轻代的大小2G  经验值 1/4-1/3 , Age =15的值。

    -XX:SurvivorRatio=4 设置Eden,S0,S1区域的比例,默认为8:1:1

    -server 以sever模式运行

    备注:Java里面有两种参数,一种是标准参数,它是不以jdk的版本变化而变化的,可以通过java -X help 查看,他所有添加的参数都是 -Xms:500m 这种。

    第二种是非标准参数:这种参数相对来说不稳定,随着JVM版本的变化可能会发生变化。

    Boolean 类型

          格式: -XX:[+|-]<name> 表示启动或禁用name属性

          例如: -XX:+UseSerialGC

    Key-Value 类型

          格式: -XX:<name>=<value> 表示name的属性值为value.

          例如:-XX:MaxTenuringThreshold=15

     4. 常用的JVM调优工具

    1. jps  主要用来显示当前java进程的ID号。

    2. jstat JVM统计监测工具,主要用于监测并显示JVM的性能统计信息。

    3. jconsole 图形化用户界面的监测工具,主要用于监测并显示用于运行于Java平台上的应用程序的性能和资源的占用信息。

    4. Jmap Java内存映射工具,主要用于打印指定的Java进程,核心文件或远程调用服务器的共享对象内存映射或堆内存细节。

    5. jstact Java堆栈跟踪工具,主要用于打印指定Java进程,核心文件或远程调试服务器的java线程的堆栈跟踪信息。

    6. jvisualvm.exe jvm监测,故障排除,分析工具,主要以图形界面的方式提供运行于指定虚拟机的Java应用程序的详细信息。

     

     

  • 相关阅读:
    .NET 3.54.0 并行计算的支持
    温故知新ASP.NET 2.0(C#)(5) Localization(本地化,多语言)
    [翻译]asp.net 2.0中通过压缩ViewState改善性能
    C# 2.0 泛型
    温故知新ASP.NET 2.0(C#)(8) DataSourceControl(数据源控件)
    温故知新ASP.NET 2.0(C#)(1) MasterPage(母版页)
    [翻译]asp.net 2.0中页的生存周期(Lifecycle)和动态控件
    [翻译]ASP.NET AJAX之内部揭秘
    乐在其中设计模式(C#) 命令模式(Command Pattern)
    [翻译]ASP.NET AJAX调用Web Service
  • 原文地址:https://www.cnblogs.com/baoyi/p/jvm_perfect.html
Copyright © 2011-2022 走看看