java -Xms -Xmx -XX:PermSize -XX:MaxPermSize】的更多相关文章

1.-Xms:表示java虚拟机堆区内存初始内存分配的大小,通常为操作系统可用内存的1/64大小即可,但仍需按照实际情况进行分配.2.-Xmx:表示java虚拟机堆区内存可被分配的最大上限,通常为操作系统可用内存的1/4大小. 开发过程中,通常会将-Xms 与-Xmx两个参数的配置相同的值,其目的是为了能够在java垃圾回收机制清理完堆区后不需要重新分隔计算堆区的大小而浪费资源. 1.-XX:newSize:表示新生代初始内存的大小,应该小于-Xms的值:2.-XX:MaxnewSize:表示新…
java  -Xms -Xmx -XX:PermSize -XX:MaxPermSize     在做java开发时尤其是大型软件开发时经常会遇到内存溢出的问题,比如说OutOfMemoryError等.这是个让开发人员很痛苦.也很纠结的问题,因为我们有时不知道什么样的操作导致了这种问题的发生.所以我们不得不通过不断的优化自己的代码结构,重构了一次又一次.虽然说不断的重构自己的代码对公对私都是一件非常好的事,但是有时我们会发现有些时候不单单是通过重构自身的代码就能够解决这样的问题,因为也可能是由…
java  -Xms -Xmx -XX:PermSize -XX:MaxPermSize     在做java开发时尤其是大型软件开发时经常会遇到内存溢出的问题,比如说OutOfMemoryError等.这是个让开发人员很痛苦.也很纠结的问题,因为我们有时不知道什么样的操作导致了这种问题的发生.所以我们不得不通过不断的优化自己的代码结构,重构了一次又一次.虽然说不断的重构自己的代码对公对私都是一件非常好的事,但是有时我们会发现有些时候不单单是通过重构自身的代码就能够解决这样的问题,因为也可能是由…
1.参数的含义 -vmargs -Xms256m -Xmx512m -XX:PermSize=256M -XX:MaxPermSize=512M -vmargs 说明后面是VM的参数,所以后面的其实都是JVM的参数了 -Xms256m JVM初始分配的堆内存 -Xmx512m JVM最大允许分配的堆内存,按需分配 -XX:PermSize=256M JVM初始分配的非堆内存 -XX:MaxPermSize=512M JVM最大允许分配的非堆内存,按需分配 我们首先了解一下JVM内存管理的机制,然…
-XX:PermSize  -XX:MaxPermSize   –设置永久区的初始空间和最大空间 -XX:PermSize 设置持久代(perm gen)初始值,物理内存的1/64 -XX:MaxPermSize 设置持久代最大值,物理内存的1/4 –他们表示,一个系统可以容纳多少个类型…
今天在做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/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…
出现java.lang.OutOfMemoryError异常时,常使用的方法便是将例如以下配置语句: -Xms512m -Xmx512m -Xss1024k -XX:MaxNewSize=256M -XX:MaxPermSize=256M 加在MyEclipse中的JDK的Optional Java VM arguments里面.然而久而久之easy混淆或忘却当中參数的含义,以下就简单的将这些參数的意义记录一下,以便日后能够參考. 直接看以下的表格吧(并不全面). 分类 选项 说明 堆空间 -X…
JVM按照其存储数据的内容将所需内存分配为堆区与非堆区两个部分:所谓堆区即为通过new的方式创建的对象(类实例)所占用的内存空间:非堆区即为代码.常量.外部访问(如文件访问流所占资源)等.然而虽然java的垃圾回收机制虽然能够很好的解决内存浪费的问题,但是这种机制也仅仅的是回收堆区的资源,而对于非堆区的资源就束手无策了,针对这样的资源回收只能凭借开发人员自身的约束来解决(堆区有java回收机制.非堆区需要开发人员能够很好的解决). -Xms256m -Xmx256m -XX:PermSize=6…
这两天遇到了pergen space的问题,在晚上查了查发现还挺普遍,并且通过eclipse启动,通过bat启动或者linux下通过sh启动,处理方式是不一样的,不过都是调整jvm的大小 如果有遇到同样的问题参考这个http://www.cnblogs.com/my-king/p/4535274.html. 着里只是整理下jvm的几个参数分别代表什么意思. 先说堆内存分配: -Xms 是最小堆内存 -Xmx 是最大堆内存 一般来说调整这两个就够了,当然还有在这个基础上更详细的设置,一般用不着就不…
http://www.oracle.com/technetwork/java/javase/memleaks-137499.html 3.1 Meaning of OutOfMemoryError One common indication of a memory leak is the java.lang.OutOfMemoryError error. This error is thrown when there is insufficient space to allocate an ob…
堆设置 -Xms 是指程序启动时初始内存大小(此值可以设置成与-Xmx相同,以避免每次GC完成后 JVM 内存重新分配). -Xmx 指程序运行时最大可用内存大小,程序运行中内存大于这个值会 OutOfMemory. -Xmn 年轻代大小(整个JVM内存大小 = 年轻代 + 年老代 + 永久代). -XX:NewRatio 年轻代与年老代的大小比例,-XX:NewRatio=4 设置为4,则年轻代与年老代所占比值为1:4. -XX:SurvivorRatio 年轻代中Eden区与Survivor…
通过JVM的这些选项:Xms/Xmx/PermSize/MaxPermSize可以牵扯出很多问题,比如性能调优等. 说明:以下转载没经过实践. 经验实例(参考): 设置每个线程的堆栈大小.JDK5.0以后每个线程堆栈大小为1M,以前每个线程堆栈大小为256K.更具应用的线程所需内存大小进行调整.在相同物理内存下,减小这个值能生成更多的线程.但是操作系统对一个进程内的线程数还是有限制的,不能无限生成,经验值在3000~5000左右. 参数的含义: -vmargs -Xms128M -Xmx512M…
转自:http://www.cnblogs.com/koik/p/4452029.html tomcat -Xms -Xmx -XX:PermSize -XX:MaxPermSize     在做java开发时尤其是大型软件开发时经常会遇到内存溢出的问题,比如说OutOfMemoryError等.这是个让开发人员很痛苦.也很纠结的问题,因为我们有时不知道什么样的操作导致了这种问题的发生.所以我们不得不通过不断的优化自己的代码结构,重构了一次又一次.虽然说不断的重构自己的代码对公对私都是一件非常好…
Xms : 是指设定程序启动时占用内存大小.一般该值设置大的会使程序启动快,但是可能会使本机暂时变慢. Xmx : 是指设定程序运行期间最大可占用的内存大小,如果程序运行需要占用更多的内存,超出这个 设置值,就会抛出OutOfMemory异常. Xss : 是指设定每个线程的堆栈大小.这个就要依据你的程序,看一个线程大约需要占用多少内存,可能会有多个线程同时运行等. 以上三个参数的设置都是默认以Byte为单位的,也可以在数字后面添加[k/m]代表kb或mb.不过设定的值不能超过机器本身内存大小,…
解决方案 在 catalina.bat 里的 蓝色代码前加入: 红色代码 rem ----- Execute The Requested Command --------------------------------------- set JAVA_OPTS=%JAVA_OPTS%-server -Xms800m -Xmx1024m  -XX:PermSize=128m -XX:MaxPermSize=256m echo Using CATALINA_BASE: "%CATALINA_BASE…
Eclipse崩溃,错误提示:MyEclipse has detected that less than 5% of the 64MB of Perm Gen (Non-heap memory) space remains. It is strongly recommendedthat you exit and restart MyEclipse with new virtual machine memoryparamters to increase this memory.   Failure…
 转载自:http://cxh61207.iteye.com/blog/1160663 java JVM虚拟机选项: Xms Xmx PermSize MaxPermSize 区别 Xms 是指设定程序启动时占用内存大小.一般来讲,大点,程序会启动的 快一点,但是也可能会导致机器暂时间变慢. Xmx 是指设定程序运行期间最大可占用的内存大小.如果程序运行需要占 用更多的内存,超出了这个设置值,就会抛出OutOfMemory 异常. Xss 是指设定每个线程的堆栈大小.这个就要依据你的程序,看一个…
点击window---->preferences---->配置的tomcat---->JDK,在Optional Java VM arguments:中输入 -Xmx512M -Xms256M -XX:MaxPermSize=256m, 如下图所示: Eclipse崩溃,错误提示: MyEclipse has detected that less than 5% of the 64MB of Perm Gen (Non-heap memory) space remains. It is…
Eclipse崩溃,错误提示: MyEclipse has detected that less than 5% of the 64MB of Perm Gen (Non-heap memory) space remains. It is strongly recommendedthat you exit and restart MyEclipse with new virtual machine memoryparamters to increase this memory.   Failur…
Eclipse崩溃,错误提示:MyEclipse has detected that less than 5% of the 64MB of Perm Gen (Non-heap memory) space remains. It is strongly recommendedthat you exit and restart MyEclipse with new virtual machine memoryparamters to increase this memory.   Failure…
java虽然是自动回收内存,但是应用程序,尤其服务器程序最好根据业务情况指明内存分配限制.否则可能导致应用程序宕掉. 举例说明含义:-Xms128m 表示JVM Heap(堆内存)最小尺寸128MB,初始分配-Xmx512m 表示JVM Heap(堆内存)最大允许的尺寸256MB,按需分配. 说明:如果-Xmx不指定或者指定偏小,应用可能会导致java.lang.OutOfMemory错误,此错误来自JVM不是Throwable的,无法用try...catch捕捉. PermSize和MaxPe…
java虽然是自动回收内存,但是应用程序,尤其服务器程序最好根据业务情况指明内存分配限制.否则可能导致应用程序宕掉. 举例说明含义:-Xms128m表示JVM Heap(堆内存)最小尺寸128MB,初始分配-Xmx512m表示JVM Heap(堆内存)最大允许的尺寸256MB,按需分配. 说明:如果-Xmx不指定或者指定偏小,应用可能会导致java.lang.OutOfMemory错误,此错误来自JVM不是Throwable的,无法用try...catch捕捉. PermSize和MaxPerm…
在linux环境下配置项目运行环境时,部署的人员都会分配一下内存,以保证程序正常的运行.其实在开发的时候(window系统),就已经涉及到内存分配了,只是这些参数有默认值,因此一直没有去重视它. 以Myeclipse为例,在Preferences->Java->Installed JREs下面,就有设置jvm内存分配. 这里我们就可以配置内存,一般我们见到的都是 -Xms128m -Xmx512m -XX:PermSize=128m -XX:MaxPermSize=512m linux中一般为…
-vmargs -Xms128M -Xmx512M -XX:PermSize=64M -XX:MaxPermSize=128M 这里有几个问题: 1. 各个参数的含义什么? 2. 为什么有的机器我将-Xmx和-XX:MaxPermSize都设置为512M之后Eclipse可以启动,而有些机器无法启动? 3. 为何将上面的参数写入到eclipse.ini文件Eclipse没有执行对应的设置? 下面我们一一进行回答 1. 各个参数的含义什么? 参数中-vmargs的意思是设置JVM参数,所以后面的其…
Eclipse崩溃,错误提示:MyEclipse has detected that less than 5% of the 64MB of Perm Gen (Non-heap memory) space remains. It is strongly recommendedthat you exit and restart MyEclipse with new virtual machine memoryparamters to increase this memory.   Failure…
参数的含义 -vmargs -Xms128M -Xmx512M -XX:PermSize=64M -XX:MaxPermSize=128M -vmargs 说明后面是VM的参数,所以后面的其实都是JVM的参数了 -Xms128m JVM初始分配的堆内存 -Xmx512m JVM最大允许分配的堆内存,按需分配 -XX:PermSize=64M JVM初始分配的非堆内存 -XX:MaxPermSize=128M JVM最大允许分配的非堆内存,按需分配 我们首先了解一下JVM内存管理的机制,然后再解释…
Eclipse崩溃,错误提示:MyEclipse has detected that less than 5% of the 64MB of Perm Gen (Non-heap memory) space remains. It is strongly recommendedthat you exit and restart MyEclipse with new virtual machine memoryparamters to increase this memory.   Failure…
-Xms 最小堆的大小, 也就是当你的虚拟机启动后, 就会分配这么大的堆内存给你 -Xmx 是最大堆的大小 当最小堆占满后,会尝试进行GC,如果GC之后还不能得到足够的内存(GC未必会收集到所有当前可用内存),分配新的对象,那么就会扩展堆,如果-Xmx设置的太小,扩展堆就会失败,导致OutOfMemoryError错误提示. JVM参数的含义 实例见实例分析 参数名称 含义 默认值   -Xms 初始堆大小 物理内存的1/64(<1GB) 默认(MinHeapFreeRatio参数可以调整)空余…
常见配置举例  堆大小设置 JVM 中最大堆大小有三方面限制:相关操作系统的数据模型(32-bt还是64-bit)限制;系统的可用虚拟内存限制;系统的可用物理内存限制.32位系统 下,一般限制在1.5G~2G;64为操作系统对内存无限制.我在Windows Server 2003 系统,3.5G物理内存,JDK5.0下测试,最大可设置为1478m. 典型设置:  java -Xmx3550m -Xms3550m -Xmn2g -Xss128k -Xmx3550m:设置JVM最大可用内存为3550…