-XX:PermSize -XX:MaxPermSize 永久区参数设置

-XX:PermSize  -XX:MaxPermSize

–设置永久区的初始空间和最大空间

-XX:PermSize 设置持久代(perm gen)初始值,物理内存的1/64

-XX:MaxPermSize 设置持久代最大值,物理内存的1/4

–他们表示,一个系统可以容纳多少个类型

时间: 2024-10-13 12:16:12

-XX:PermSize -XX:MaxPermSize 永久区参数设置的相关文章

JAVA -Xms -Xmx -XX:PermSize -XX:MaxPermSize 区别

参数设置背景 在做java开发时尤其是大型软件开发时经常会遇到内存溢出的问题,比如说OutOfMemoryError等.这是个让开发人员很痛苦.也很纠结的问题,因为我们有时不知道什么样的操作导致了这种问题的发生.所以我们不得不通过不断的审查.优化自己的代码结构.但是有时我们会发现有些时候不单单是通过重构自身的代码就能够解决这样的问题,因为也可能是由于我们对java虚拟机运行时的内存分配的不得当导致了内存溢出现象的不断发生. 为了解决这一问题,java开发团队提供了一个用户自定义的方式按需配置ja

[Java] xms xmx XX:PermSize XX:MaxPermSize 参数意义解析

今天在做jmeter压力测试时又出现以前经常出现的异常,如下图,长时间不弄这个的,又有点不知所措了,所以干脆再来总结一下问题: 以前写过两篇文章,对这个问题研究过,见下面连接: 连接1:http://www.cnblogs.com/garinzhang/archive/2013/03/20/2970901.html 连接2:http://www.cnblogs.com/garinzhang/p/jvisualvm_resolve_permgen_space.html 这次在网上查找之后,想彻底解

tomcat 启动参数 Xms, Xmx, XX:MaxNewSize, XX:PermSize, -XX:MaxPermSize, Djava.awt.headless

在 tomcat/bin/catalina.sh 的 第一行#!/bin/sh 下添加 JAVA_OPTS="-server -Xms512m -Xmx1024m -XX:MaxNewSize=512m -XX:PermSize=128m -XX:MaxPermSize=256m -Djava.awt.headless=true" -Xms256m JVM初始分配的堆内存, 生产环境建议与Xmx相同, 设为1024m以上-Xmx512m JVM最大允许分配的堆内存, 生产环境建议设为1

tomcat的内存配置,关于-Xms -Xmx -XX:PermSize -XX:MaxPermSize的理解和区别

JVM按照其存储数据的内容将所需内存分配为堆区与非堆区两个部分:所谓堆区即为通过new的方式创建的对象(类实例)所占用的内存空间:非堆区即为代码.常量.外部访问(如文件访问流所占资源)等.然而虽然java的垃圾回收机制虽然能够很好的解决内存浪费的问题,但是这种机制也仅仅的是回收堆区的资源,而对于非堆区的资源就束手无策了,针对这样的资源回收只能凭借开发人员自身的约束来解决(堆区有java回收机制.非堆区需要开发人员能够很好的解决). -Xms256m -Xmx256m -XX:PermSize=6

JVM常用参数设置

-server -Xms8g 初始堆大小 -Xmx8g 最大堆大小 -Xmn2g 年轻代大小 -Xss1024K 每个线程的堆栈大小 -XX:PermSize=256m -XX:MaxPermSize=512m Perm不属于堆内存,由虚拟机直接分配,可通过-XX:PermSize -XX:MaxPermSize 等参数调整其大小 设置持久代(perm gen)初始值   设置持久代最大值 -XX:ParallelGCThreads=8 并行收集器的线程数 -XX:+UseConcMarkSwe

了解java虚拟机—非堆相关参数设置(4)

非堆内存相关配置 -XX:PermSize 永久区初始大小 -XX:MaxPermSize 永久区最大大小 在JDK1.8中使用-XX:MxMetaspaceSize配置永久区最大大小 -Xss 线程栈大小 -XX:MaxDirectMemorySize 直接内存大小,默认为最大堆空间,即-Xmx.当直接内存使用量达到-XX:MaxDirectMemorySize时,会触发垃圾回收,如果垃圾回收不能有效释放空间,直接内存溢出依然会引起系统的OOM.一般来说直接内存的读写速度会快于堆内存,但申请速

jvm参数设置 -vmargs -Xms128M -Xmx512M -XX:PermSize=64M -XX:MaxPermSize=128M

-vmargs -Xms128M -Xmx512M -XX:PermSize=64M -XX:MaxPermSize=128M 这里有几个问题: 1. 各个参数的含义什么? 2. 为什么有的机器我将-Xmx和-XX:MaxPermSize都设置为512M之后Eclipse可以启动,而有些机器无法启动? 3. 为何将上面的参数写入到eclipse.ini文件Eclipse没有执行对应的设置? 下面我们一一进行回答 1. 各个参数的含义什么? 参数中-vmargs的意思是设置JVM参数,所以后面的其

(转)eclipse内存溢出设置 -Xms212m -Xmx804m -XX:PermSize=250M -XX:MaxPermSize=356m

可能是eclipse目录下eclipse.ini文件的设置上有问题,一般的ini文件设置主要包括以下几项: -vmargs-Xms40m-Xmx256m-XX:PermSize=64M-XX:MaxPermSize=128M 以 下解释其意思.-vmargs:说明后面是VM的参数-Xms40m:虚拟机占用系统的最小内存-Xmx256m:虚拟机占用系统的最大内存 -XX:PermSize:最小堆大小.一般报内存不足时,都是说这个太小, 堆空间剩余小于5%就会警告,建议把这个稍微设 大一点,不过要视

堆中新生代,老年代,溢出实例,设置永久区溢出

1.堆溢出 main: public class HeapOOM { public static void main(String[] args) { List<UserBean> users = new ArrayList<UserBean>(); while (true) { users.add(new UserBean()); } } bean: public class UserBean { String name; int age; } 然后在运行的时候设置jvm参数 -