`
taiwei.peng
  • 浏览: 234414 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

jvm 一些参数的解释

    博客分类:
  • jvm
阅读更多

Windows下tomcat 的 catalina.sh  文件或 Linux下 start.sh 参数解释

JAVA_OPTS=" -Xms6g -Xmx6g -Xmn2g -Xss128k -XX:PermSize=64m -XX:MaxPermSize=256m -XX:SurvivorRatio=6 -XX:ParallelGCThreads=8

-Djava.rmi.server.hostname=120.77.38.110 

-Dcom.sun.management.jmxremote.port=18999 

-Dcom.sun.management.jmxremote.ssl=false 

-Dcom.sun.management.jmxremote.authenticate=false

-Xdebug -Xnoagent -Djava.compiler=NONE -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=8080

-XX:-PrintGC -XX:-PrintGCDetails -XX:-PrintGCTimeStamps -Xloggc:logs/gc.log

-XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=logs/a.hprof"

 

-Xmx6g:设置JVM最大可用内存,默认值:物理内存的1/64,小于1G。

-Xms6g:设置JVM初始内存,此值可以设置与 -Xmx 相同,以避免每次垃圾回收完成后JVM重新分配内存。默认值:物理内存的1/64,小于1G。一般为机器最大内存的一半左右。

-Xmn2g:设置年轻代大小,默认值:物理内存的1/64,小于1G。整个堆的大小=年轻代大小+年老代大小,堆的大小不包含持久代大小,如果增大了年轻代,年老代相应就会减小,官方默认的配置为年老代大小/年轻代大小=2/1左右(使用-XX:NewRatio可以设置-XX:NewRatio=5,表示年老代/年轻代=5/1);此值对系统性能影响较大,Sun官方推荐配置为整个堆的3/8。一般-Xmn的大小是-Xms的1/3。

-Xss:设置较小的线程栈以支持创建更多的线程,支持海量访问,并提升系统性能。

-XX:PermSize:设置持久代初始值。默认值:物理内存的1/64。

-XX:MaxPermSize=256m:设置持久代最大值。默认值:物理内存的1/64。

-XX:SurvivorRatio=6 设置年轻代中Eden区与Survivor区的比值。系统默认是8,根据经验设置为6,则2个Survivor区与1个Eden区的比值为2:6,一个Survivor区占整个年轻代的1/8。

 

-XX:ParallelGCThreads=8 配置并行收集器的线程数,即同时8个线程一起进行垃圾回收。此值一般配置为与CPU数目相等。

 

 

1. -Djava.rmi.server.hostname:这个是配置 server 的 IP 的

2. -Dcom.sun.management.jmxremote.port:这个是配置远程 connection 的端口号的,要确定这个端口没有被占用

3. -Dcom.sun.management.jmxremote.ssl=false 指定了 JMX 是否启用 ssl

4. -Dcom.sun.management.jmxremote.authenticate=false   指定了JMX 是否启用鉴权(需要用户名,密码鉴权)

配置这4个目的是远程监控 JVM 

 

Xdebug 告诉jvm运行在debug模式下 

Xrunjdwp transport 指定连接方式(包括socket传输和内存传输两种,其中内存传输只支持windows,而且内存传输不支持远程调试) 
address 监听端口,以接收debug客户端发起的TCP连接。 
server =y 表示在remote debugging会话中作为服务端 

 

XX:-PrintGC 打印GC的信息

XX:HeapDumpPath  打印dump 文件

eclipse 在本地连接到远程服务器调试如下图所示:

 

  • 大小: 60.7 KB
分享到:
评论

相关推荐

    jvm启动参数大全

    以下是一些常见的JVM启动参数及其详细解释: 1. **-Xms和-Xmx**: 这两个参数用于设置Java堆内存的最小和最大值。例如,`-Xms256m -Xmx1024m`表示初始堆大小为256MB,最大堆大小为1GB。合理设置这两个参数可以避免因...

    jvm内存参数调优

    ### JVM内存参数调优详解 #### 一、概述 Java虚拟机(JVM)是执行Java字节码的软件环境,为了提高Java程序的性能和稳定性,合理调整JVM的内存参数至关重要。根据Java启动参数的不同分类,我们可以将其分为标准参数...

    JAVA应用JVM原理及参数调优深入讲解视频.zip

    JAVA应用JVM原理及参数调优深入讲解视频.1 JAVA应用JVM原理及参数调优深入讲解视频.2 JAVA应用JVM原理及参数调优深入讲解视频.3 JAVA应用JVM原理及参数调优深入讲解视频.4 JAVA应用JVM原理及参数调优深入讲解视频.5 ...

    jdk8 jvm 参数图(随手参考好资料)

    常用jvm参数都在这张图中,参考起来方便,是国外大神整理的

    JVM内存参数详解以及配置调优

    JVM 内部组件包括类装载器(ClassLoader)、内存管理(Memory Management)、诊断接口(Diagnostics Interface)和类解释器(Interpreter)。平台相关接口主要用于跨操作系统平台重用 JVM 代码。 内存管理 内存...

    常用JVM配置参数.ppt

    ### 常用JVM配置参数详解 #### 一、概述 Java虚拟机(JVM)是运行Java程序的核心环境,其性能的优劣直接影响到Java应用程序的执行效率...在实际应用中,建议根据具体的应用场景灵活调整JVM参数,以达到最佳的运行效果。

    tomcat6.0 修改启动内存设置 java jvm参数配置

    在调整 Tomcat 的内存设置之前,我们需要了解一些基本的 JVM 内存参数: 1. **`-Xms`**:设置 JVM 启动时的初始堆内存大小。 2. **`-Xmx`**:设置 JVM 运行时的最大堆内存大小。 3. **`-Xmn`**:设置年轻代 (Young ...

    JVM优化3(Tomcat参数调优,JVM参数调优,jvm字节码,代码优化).pdf

    本篇文件内容主要介绍了JVM优化的第三部分,重点围绕Tomcat参数调优、JVM参数调优、JVM字节码优化以及代码优化等几个方面。下面是针对这些知识点的详细解释: 1. Tomcat参数调优 在Tomcat参数调优部分,首先介绍了...

    深入JVM内核—原理、诊断与优化视频教程-3.常用JVM配置参数

    执行引擎是JVM的心脏,它负责解释或编译执行字节码;本地方法接口和本地方法库则为JVM提供了调用非Java语言(如C/C++)功能的能力。 接下来,我们将关注JVM的诊断技术。通过JVM提供的各种工具,如JConsole、...

    jvm 参数及gc详解

    本文将深入探讨JVM参数及其与Java垃圾收集相关的知识。 一、JVM参数详解 JVM参数可以分为三类:启动参数(-X),标准参数(-XX),以及非公开(实验性)参数(-XX:)。这些参数允许开发者对JVM的行为进行精细调整...

    jvm1.6参数详解

    jvm1.6参数详解

    简单实用JVM参数配置

    【JVM参数配置详解】 Java Virtual Machine (JVM) 是Java程序的核心组成部分,它负责解析和执行Java程序的字节码。JVM的设计目标是提供跨平台的运行环境,通过在实际硬件上模拟一个虚拟的计算机系统,使得Java程序...

    JVM常用参数设置

    理解并正确配置JVM参数对于优化应用程序性能、内存管理和故障排查至关重要。本文将深入探讨JVM的常用参数设置,以及它们如何影响Java应用程序的运行。 一、JVM内存设置 1. **堆内存**: - `-Xms`:初始堆大小,...

    jvm 参数调优实践

    JVM参数调优是优化Java应用程序性能的关键环节,尤其是在服务器端的应用中,如Web服务器Resin。本实践案例中,作者分别尝试了三种不同的垃圾回收(GC)策略:串行回收、并行回收和并发回收,并针对每种策略提供了...

    Tomcat JVM的参数调优

    【标题】"Tomcat JVM参数调优"涉及的是在运行Apache Tomcat服务器时优化Java虚拟机(JVM)性能的过程。Tomcat是一个流行的开源Java应用服务器,它用于部署和运行Java Servlets和JavaServer Pages(JSP)。由于JVM是...

    IBM JVM参数选项

    **: 显示帮助信息,介绍可用的所有JVM参数。 - 示例:`-help` 3. **-fullversion**: 输出JVM的完整版本信息。 - 示例:`-fullversion` 4. **-showversion**: 显示JVM的版本信息。 - 示例:`-showversion` 5. *...

    jvm参数设置

    ### JVM参数设置详解 在Java应用开发与维护过程中,JVM(Java虚拟机)的配置至关重要,它直接影响到应用程序的性能表现与稳定性。本文将基于提供的文件内容,深入解析Linux环境下JVM的基本参数设置方法及原理。 ##...

Global site tag (gtag.js) - Google Analytics