`

JVM的OPTS优化配置指南

 
阅读更多
VM主要管理两种类型的内存:堆和非堆。简单来说堆就是Java代码可及的内存,是留给开发人员使用的;非堆就是JVM留给自己用的,所以方法区、JVM内部处理或优化所需的内存(如JIT编译后的代码缓存)、每个类结构(如运行时常数池、字段和方法数据)以及方法和构造方法的代码都在非堆内存中。 VM初始分配的堆内存由-Xms指定,默认是物理内存的1/64;JVM最大分配的堆内存由-Xmx指定,默认是物理内存的1/4。默认空余堆内存小于40%时,JVM就会增大堆直到-Xmx的最大限制; 空余堆内存大于70%时,JVM会减少堆直到-Xms的最小限制。因此服务器一般设置-Xms、-Xmx 相等以避免在每次GC 后调整堆的大小。 说明:如果-Xmx 不指定或者指定偏小,应用可能会导致java.lang.OutOfMemory错误,此错误来自JVM,不是Throwable的,无法用try...catch捕捉。 JVM使用-XX:PermSize设置非堆内存初始值,默认是物理内存的1/64;由XX:MaxPermSize设置最大非堆内存的大小,默认是物理内存的1/4。 XX:MaxPermSize设置过小会导致java.lang.OutOfMemoryError: PermGen space 就是内存益出。 JVM最多可占用(堆内存)+ (永久区,非堆内存). 如果占满了,就算服务器还有剩余的内存,jvm也不能使用,照样会报"Out of memory"的错误。
分享到:
评论

相关推荐

    java虚拟机jvm及Tomcat中的jvm有关内存的设置与调优

    1. **环境变量设置**:通过设置`CATALINA_OPTS`环境变量,可以在系统级别全局地调整Tomcat中JVM的内存参数。 2. **编辑catalina.bat**:在Tomcat的bin目录下,直接修改catalina.bat文件,替换或添加`-Xmx`, `-Xms`,...

    hadoop调优指南 hadoop调优指南

    - **mapreduce.map.java.opts** 和 **mapreduce.reduce.java.opts**:控制Java虚拟机(JVM)的堆内存大小。 - **dfs.blocksize**:定义HDFS中的块大小,默认为128MB或256MB。对于大文件,增大块大小可以减少元数据...

    配置好的tomcat7.0服务器

    《配置好的Tomcat 7.0服务器:搭建与优化指南》 Tomcat 7.0是Apache软件基金会的Jakarta项目中的一个核心组件,它是一个开源的、免费的Web应用服务器,广泛应用于Java Servlet和JavaServer Pages(JSP)的部署。在...

    Tomcat配置技巧Top 10

    本文将分享Tomcat配置的十大技巧,这些技巧源于《Tomcat权威指南》。 首先,我们来看配置系统管理(Admin Web Application)。Tomcat提供了类似于商业J2EE服务器的强大管理界面,它包括对Context、数据源、用户和组...

    可观察内存的springboot代码

    4. **环境变量**:某些环境变量可以影响Spring Boot应用的行为,例如`SPRING_APPLICATION_JSON`可以用来传递配置属性,`JAVA_OPTS`可以设置JVM参数。 5. **启动参数**:在Spring Boot中,我们可以通过命令行参数、...

    maven3安装配置参考手册

    总结,本手册提供了详细的Maven 3安装和配置指南,包括介质下载、环境变量设置、配置文件修改等,以帮助用户顺利搭建开发环境。通过遵循这些步骤,开发者可以高效地利用Maven进行项目管理,实现自动化构建,从而提高...

    tomcat out of memory

    - 官方文档:Apache Tomcat官网提供了详细的配置指南和最佳实践。 - Java内存管理:理解Java内存模型和垃圾回收机制是解决这类问题的关键。 - JVM调优:学习如何根据应用特性优化JVM参数。 通过以上分析和解决...

    JIRA系统管理员指南_精简版v4.1.pdf

    1. **性能优化**:通过调整JVM参数、数据库索引和缓存策略提升JIRA性能。 2. **集成扩展**:利用API或Webhooks与其他系统(如Git、Confluence)集成,增强JIRA的功能。 3. **故障排查**:诊断和解决JIRA的运行问题,...

    hadoop 安装部署手册

    - **配置hadoop-env.sh**:在此文件中设置Java的路径,以及Hadoop的一些环境变量,如`JAVA_HOME`和`HADOOP_OPTS`(用于设置JVM参数)。 - **配置core-site.xml**:核心配置文件,主要设定Hadoop的基本属性,如命名...

    jBPM4_mysql_tomcat.zip_jbpm4

    例如,如果jbPM4需要的内存超过了默认的JVM堆大小,你可能需要修改`bin/catalina.sh`(或`catalina.bat`,取决于你的操作系统)文件,增加`JAVA_OPTS`环境变量,如`JAVA_OPTS="-Xms256m -Xmx1024m"`。 最后,启动...

    Aliyun安装tomcat.docx

    以下是一个详细的步骤指南,涵盖了从系统准备到Tomcat优化的整个过程。 首先,我们来了解一下什么是Tomcat。Tomcat是一款开源的Java Servlet容器,实现了Java EE的Web部分,特别是Servlet和JSP规范。它由Apache软件...

    tomcat技术手册

    1. 调整JVM参数:通过设置JAVA_OPTS环境变量,增加堆内存、调整垃圾回收策略等。 2. 配置连接器:在server.xml中修改Connector元素,设置最大线程数、超时时间等。 3. 修改默认端口:避免与其他服务冲突,可以更改...

    Linux下配置jdk+tomcat[归类].pdf

    以下是一份详细的步骤指南,涵盖了从安装JDK到配置Tomcat,以及设置Tomcat开机自动运行的过程。 首先,我们需要在Linux操作系统(本例中是Ubuntu 9及以上版本)上安装JDK。这通常包括以下步骤: 1. 创建一个新的...

    如何在Web 应用上部署Maven Spring Boot项目-zhanghongmei1

    设置`JAVA_OPTS`环境变量,例如添加JVM内存设置:`-Xms256m -Xmx512m`。 - 如果你选择的是Windows服务器,还需要配置PATH环境变量,指向Java的安装路径。 5. **上传Spring Boot可执行jar**: - 使用`mvn package`...

    Linux下安装Jboss.pdf

    根据应用需求,调整JVM内存设置、线程池大小和其他配置参数以优化性能。 通过以上步骤,你已经在Linux环境中成功安装了JBoss 5.1和JDK 1.6。理解这些步骤并熟练操作将有助于你在Linux系统上构建和管理Java应用程序...

    tomcat的安装包

    **标题:“Tomcat的安装与配置指南”** 在IT领域,Apache Tomcat是一个广泛应用的开源软件,它作为Java Servlet和JavaServer Pages(JSP)的Web应用服务器,扮演着核心角色。本指南将详述如何下载、安装以及配置...

    RocketMQ4.0.1控制台

    2. **JAVA_OPTS**: 配置 JVM 参数,如堆内存大小(-Xms, -Xmx)和其他性能优化选项。 3. **SERVER_PORT**: 控制台应用监听的端口号,避免与其他服务冲突。 4. **ROCKETMQ_HOME**: 指向 RocketMQ 的安装目录。 5. **...

    openfire二次开发

    这包括设置环境变量,如`JAVA_OPTS`来调整JVM参数,以及`OPENFIRE_HOME`指向Openfire的安装目录。另外,还要确保Eclipse能够正确部署和运行修改后的代码。 6. **版本控制与持续集成** 为了保持代码版本管理和团队...

    linux+tomcat+mysql+solr调优

    ### Linux + Tomcat + MySQL + Solr 调优指南 #### 一、Linux系统调优 ##### TCP连接优化 为了提升Linux系统在网络层面的性能,可以对TCP连接进行优化,尤其是在处理大量并发请求时。以下是一些常用的TCP配置项:...

Global site tag (gtag.js) - Google Analytics