`
petitlen
  • 浏览: 36490 次
  • 性别: Icon_minigender_1
  • 来自: 广州
文章分类
社区版块
存档分类

java 参数设置

阅读更多

http://hi.baidu.com/zjuhebi/blog/item/b69fd5edb5d8ffdfb31cb187.html

主要涉及到:

-XX:PermSize=64M
-XX:MaxPermSize=192m
-XX:ReservedCodeCacheSize=48m

-Xms256m

-Xmx512m

默认的jvm内存很小,大应用时根本不够,可以登陆tomcat -->status查看 JVM

 

http://blog.csdn.net/chenyi8888/archive/2009/10/23/4720489.aspx

主要涉及到:

写道
相比之下,还是并发回收比较好,性能比较高,只要能解决ParNewGC(并行回收年轻代)时的promotion failed错误就一切好办了,查了很多文章,发现引起promotion failed错误的原因是CMS来不及回收(CMS默认在年老代占到90%左右才会执行),年老代又没有足够的空间供GC把一些活的对象从年轻代移到年老代,所以执行Full GC。CMSInitiatingOccupancyFraction=70表示年老代占到约70%时就开始执行CMS,这样就不会出现Full GC了。SoftRefLRUPolicyMSPerMB这个参数也是我认为比较有用的,官方解释是softly reachable objects will remain alive for some amount of time after the last time they were referenced. The default value is one second of lifetime per free megabyte in the heap,我觉得没必要等1秒,所以设置成0。配置如下
$JAVA_ARGS .= " -Dresin.home=$SERVER_ROOT -server -Xms2048M -Xmx2048M -Xmn512M -XX:PermSize=256M -XX:MaxPermSize=256M -XX:SurvivorRatio=8 -XX:MaxTenuringThreshold=7 -XX:GCTimeRatio=19 -Xnoclassgc -XX:+DisableExplicitGC -XX:+UseParNewGC -XX:+UseConcMarkSweepGC -XX:+CMSPermGenSweepingEnabled -XX:+UseCMSCompactAtFullCollection -XX:CMSFullGCsBeforeCompaction=0 -XX:+CMSClassUnloadingEnabled -XX:-CMSParallelRemarkEnabled -XX:CMSInitiatingOccupancyFraction=70 -XX:SoftRefLRUPolicyMSPerMB=0 -XX:+PrintClassHistogram -XX:+PrintGCDetails -XX:+PrintGCTimeStamps -XX:+PrintGCApplicationConcurrentTime -XX:+PrintGCApplicationStoppedTime -Xloggc:log/gc.log ";
上面这个配置内存上升的很慢,24小时之内几乎没有停顿现象,最长的只停滞了 0.8s,ParNew GC每30秒左右才执行一次,每次回收约0.2秒,看来问题应该暂时解决了。

参数不明白的可以上网查,本人认为比较重要的几个参数是:-Xms -Xmx -Xmn MaxTenuringThreshold GCTimeRatio UseConcMarkSweepGC CMSInitiatingOccupancyFraction SoftRefLRUPolicyMSPerMB

 

分析 java.lang.OutOfMemoryError: PermGen space

http://www.iteye.com/topic/80620

一个不错的讨论帖

分享到:
评论

相关推荐

    JAVA-OPTS参数设置.docx

    JAVA-OPTS参数设置 JAVA-OPTS 是一个变量,用于设置 JVM 相关运行参数。JVM 是 Java Virtual Machine 的缩写,表示 Java 虚拟机。JAVA-OPTS 变量的设置对 Java 应用程序的性能和稳定性具有重要影响。 在设置 JAVA-...

    java JDK 环境参数设置

    ### Java JDK 环境参数设置详析 Java作为全球广泛使用的编程语言之一,其运行环境的正确配置至关重要。本文将深入探讨Java Development Kit (JDK)环境参数的设置过程,涵盖Windows XP与Linux两大操作系统下的配置...

    java虚拟机(jvm)介绍以及相关参数设置与调优

    "java虚拟机(jvm)介绍以及相关参数设置与调优" Java虚拟机(JVM)是Java平台的核心组件之一,它提供了一个运行Java字节码的环境,并且负责管理Java程序的内存分配和垃圾回收。在本文中,我们将深入探讨Java虚拟机...

    java传递参数的方法

    java传递参数的方法 很的东西 大家下载学习一下

    java方法的参数传递其二.docx

    Java 方法参数传递之引用类型 Java 方法参数传递是 Java 编程语言中的一种基本机制,在方法调用时将参数传递给方法体内的变量,但是在传递过程中,参数的类型会对传递结果产生影响。在本文中,我们将讨论 Java 方法...

    weblogic优化指南.docx

    本文档旨在为读者提供WebLogic服务器的优化指南,涵盖Java参数设置、GC优化、堆栈内存优化、监视堆栈使用情况、设置与性能有关的配置参数等方面的知识点。 一、Java参数设置 在WebLogic服务器中,Java参数设置是...

    JAVA 内存设置原理

    ### JAVA内存设置原理详解 在深入探讨JAVA内存设置原理之前,我们先理解一下JVM(Java虚拟机)的内存管理机制。JVM是JAVA运行时环境的核心,它负责执行JAVA字节码,同时管理程序运行时的内存分配与回收。JVM的内存...

    USB摄像头java实现

    1. **初始化**:加载和注册摄像头设备,这可能涉及到查找可用的摄像头,选择合适的设备,以及设置初始参数,如分辨率和帧率。 2. **捕获视频流**:创建一个`CaptureDevice`实例,打开摄像头并开始捕获视频流。这...

    myeclipsejava虚拟机jvm参数设置

    非堆内存的初始大小和最大大小可以通过`-XX:PermSize`和`-XX:MaxPermSize`来设置,但需要注意,这些参数在Java 8之后已不再适用,因为永久代已被元空间取代。对于元空间,JVM会根据需要自动调整大小,但可以使用`-XX...

    java的几个命令行参数

    Java 命令行参数是 Java 虚拟机在 DOS 环境下运行时的基本参数设置,掌握这些参数可以更好地利用 Java 虚拟机的功能。本文将详细介绍 Java 命令行参数的使用方法和参数设置。 一、运行 Class 文件 Java 命令行参数...

    java 请求参数过滤拦截

    5. **长度限制**:设置参数的最大长度,防止过长的输入导致内存溢出或其他安全问题。 6. **使用验证框架**:例如Apache Commons Validator或JSR 303 Bean Validation,可以方便地定义和实施复杂的验证规则。 7. **...

    java虚拟机的相关参数设置与调优.pdf

    ### Java虚拟机的相关参数设置与调优 #### Java虚拟机简介 Java虚拟机(Java Virtual Machine,简称JVM)是一种抽象计算机模型,在物理计算机上通过软件实现。它有自己的硬件架构,例如处理器、堆栈、寄存器等,并...

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

    ### Tomcat 6.0 修改启动内存设置及 Java JVM 参数配置详解 #### 一、背景与目的 在部署和运行 Java Web 应用时,合理地配置应用服务器(如 Apache Tomcat)的内存是非常重要的。这不仅可以提升应用程序的性能,还...

    基于Java的参数设置管理系统的设计与应用(毕设&课设论文参考).pdf

    ### 基于Java的参数设置管理系统的设计与应用 #### 概述 当前,随着中国道路交通建设的迅速发展,驾驶已成为民众的一项基本生活技能。驾驶人考试作为获取驾驶资格的关键环节,其重要性不言而喻。然而,在现有的...

    java设置Sping的dataSource的参数信息

    本文将详细介绍如何利用Java代码动态地为Spring中的`dataSource`设置参数,并通过外部配置文件来实现这些参数的灵活调整。 ### 一、概述 在Java Web开发中,通常会采用Spring框架来管理应用程序的各种Bean,其中...

    java绘图 设置画笔属性 实例代码

    本实例代码着重讲解如何在Java中设置画笔属性来实现更加灵活和丰富的图形绘制。 Java中的图形绘制主要依赖于`java.awt`和`javax.swing`这两个包,特别是`Graphics2D`类,它是`Graphics`类的扩展,提供了更多高级...

    java虚拟机参数配置

    - **-Xmx512m**:该参数用来设置Java堆的最大值。这里的512m表示最大堆空间限制为512MB。当程序运行过程中需要更多内存时,如果超出这个限制,则会抛出OutofMemoryError。对于轻量级的应用或者测试环境来说,512MB...

    java调试参数

    通过合理设置Java调试参数,开发者可以在开发、测试甚至生产环境中对Java应用程序进行远程调试,这对于定位问题、理解程序运行时的行为至关重要。本文将围绕“Java调试参数”这一主题展开,详细介绍与之相关的各项...

Global site tag (gtag.js) - Google Analytics