如何设置jvmidea jvm 内存设置

jvm虚拟内存应该如何设置?
输入手机号码,报价结果将发送到您手机
装修顾问-馨馨
4年行业经验,24h可咨询
10秒闪电通过好友
报价短信已发送到您的手机
因材料品牌及工程量不同,具体报价以量房实测为准
稍候装修管家将回电您,免费提供装修咨询服务
您的装修预算约
*装修管家将回电您,免费提供装修咨询服务
*装修管家将回电您,免费提供装修咨询服务
*因材料品牌及工程量不同,具体报价以量房实测为准
装修顾问 -馨馨
(四年装修行业经验)
微信扫一扫
3.&您家小区名称 :&&
请选择您家的装修时间
jvm虚拟内存应该如何设置?
我来帮他解答
还可以输入1500字
已有3条回答
回答数:5247
被采纳数:4
您好,设置虚拟内存方法:
1、用右键点击桌面上的“我的电脑”图标,在出现的右键菜单中选择“属性”选项打开“系统属性”窗口。在窗口中点击“高级”选项卡,出现高级设置的对话框。
2、点击“性能”区域的“设置”按钮,在出现的“性能选项”窗口中选择“高级”选项卡,打开其对话框。
3、在该对话框中可看到关于虚拟内存的区域,点击“更改”按钮进入“虚拟内存”的设置窗口。选择一个有较大空闲容量的分区,
4、勾选“自定义大小”前的复选框,将具体数值填入“初始大小”、“最大值”栏中,而后依次点击“设置→确定”按钮即可,最后重新启动计算机使虚拟内存设置生效。
希望我的回答对您有所帮助,望采纳。
回答数:94500
被采纳数:77
设置办法:到桌面“计算机”图标,右键“属性” 或者直接找到 “控制面板”--“系统和安全”--“系统” 菜单功能 出现的,关于计算机菜单中。找到“高级系统设置”选项(如果是XP系统就直接到下一步操作了) 出现的“系统属性”窗口中,找到“高级”---“设置”。
回答数:21545
被采纳数:6
1、内存的设定主要根据你的内存大小和电脑的用途来设定。所谓虚拟内存就是在你的物理内存不够用时把一部分硬盘空间所为内存来使用,不过由于硬盘传输的速度要比内存传输速度慢的多,所以使用虚拟内存比物理内存效率要慢。个人实际需要的值应该自己多次调整为好。
设的太大会差生大量的碎片,严重影响系统速度,设的太小就不够用,于是系统就会提示你虚拟内存太小。
2、一般情况下,可让Windows来自动分配管理虚拟内存,它能根据实际内存的使用情况,动态调整虚拟内存的大小。
3、定义虚拟内存,一般默认的虚拟内存大小是取一个范围值,最好给它一个固定值,这样就不容易产生磁盘碎片,具体数值根据你的物理内存大小来定,一般为物理内存的1.5--3倍;但也可最小值设为物理内存的1.5--2倍,最大值为物理内存的2--3倍。
4、拟内存最好不要与系统设在同一分区内,内存是随着使用而动态地变化,C盘就容易产生磁盘碎片,影响系统运行速度,所以,最好将虚拟内存设置在其它分区中磁盘剩余空间较大而又不常用的盘中,如D、F,这样可以避免系统在此分区内进行频繁的读写操作而影响系统速度。拟内存在一台电脑中,只能是一个,可放在磁盘的任何一个分区中。
5、置虚拟内存的方法是:右击我的电脑—属性--高级--性能设置--高级--虚拟内存更改--点选C盘--单选“无分页文件(N)”--“设置”,此时C盘旁的虚拟内存就消失了;然后选中D盘,单选“自定义大小”--在下面的“初始大小”和“最大值”两个文本框中输入数值--“设置”—确定--重启,便完成了设置。
希望我的回答能帮助到你用户名:jymydmy
访问量:4008
注册日期:
阅读量:1297
阅读量:3317
阅读量:461787
阅读量:1146064
51CTO推荐博文
&&&&问题现象:服务器上的应用出现java.lang.OutOfMemoryError: Java heap space,连带出现h2db获取新数据库链接出错(“Failed to acquire connection. Sleeping for 7000ms”), 应用是采用bat文件启动。&&&&解决:其他同志说的设置JAVA_OPTS系统环境变量的方法,需要在bat里指定该环境变量名,我用的是直接在bat里设置添加-Xmx1024m。&&&&bat内容:&&&&&&&&&&&&&&&&&&&&java -Xmx1024m -jar **.jar本文出自 “” 博客,请务必保留此出处
了这篇文章
类别:┆阅读(0)┆评论(0)中国领先的IT技术网站
51CTO旗下网站
Java虚拟机(JVM)中的内存设置详解
本文向您介绍在Java虚拟机,即JVM中如何设置内存,达到良好的GC效率。
作者:心无念来源:网易博客| 16:27
在一些规模稍大的应用中,Java虚拟机(JVM)的内存设置尤为重要,想在项目中取得好的效率,GC(垃圾回收)的设置是第一步。
PermGen space:全称是Permanent Generation space.就是说是永久保存的区域,用于存放Class和Meta信息,Class在被Load的时候被放入该区域Heap space:存放Instance。
GC(Garbage Collection)应该不会对PermGen space进行清理,所以如果你的APP会LOAD很多CLASS的话,就很可能出现PermGen space错误
Java Heap分为3个区1.Young2.Old3.Permanent
Young保存刚实例化的对象。当该区被填满时,GC会将对象移到Old区。Permanent区则负责保存反射对象,本文不讨论该区。
JVM的Heap分配可以使用-X参数设定,
-Xms 初始Heap大小-Xmx java heap最大值&
-Xmn young generation的heap大小
JVM有2个GC线程第一个线程负责回收Heap的Young区第二个线程在Heap不足时,遍历Heap,将Young 区升级为Older区Older区的大小等于-Xmx减去-Xmn,不能将-Xms的值设的过大,因为第二个线程被迫运行会降低JVM的性能。为什么一些程序频繁发生GC?
有如下原因:1.程序内调用了System.gc()或Runtime.gc()。2.一些中间件软件调用自己的GC方法,此时需要设置参数禁止这些GC。3.Java的Heap太小,一般默认的Heap值都很小。4.频繁实例化对象,Release对象 此时尽量保存并重用对象,例如使用StringBuffer()和String()。
如果你发现每次GC后,Heap的剩余空间会是总空间的50%,这表示你的Heap处于健康状态,许多Server端的Java程序每次GC后最好能有65%的剩余空间
经验之谈:
1.Server端JVM最好将-Xms和-Xmx设为相同值。为了优化GC,最好让-Xmn值约等于-Xmx的1/3。2.一个GUI程序最好是每10到20秒间运行一次GC,每次在半秒之内完成。
1.增加Heap的大小虽然会降低GC的频率,但也增加了每次GC的时间。并且GC运行时,所有的用户线程将暂停,也就是GC期间,Java应用程序不做任何工作。2.Heap大小并不决定进程的内存使用量。进程的内存使用量要大于-Xmx定义的值,因为Java为其他任务分配内存,例如每个线程的Stack等。
Stack的设定每个线程都有他自己的Stack。
-Xss 每个线程的Stack大小
Stack的大小限制着线程的数量。如果Stack过大就好导致内存溢漏。-Xss参数决定Stack大小,例如-Xss1024K。如果Stack太小,也会导致Stack溢漏。
硬件环境也影响GC的效率,例如机器的种类,内存,swap空间,和CPU的数量。如果你的程序需要频繁创建很多transient对象,会导致JVM频繁GC。这种情况你可以增加机器的内存,来减少Swap空间的使用。
1、第一种为单线程GC,也是默认的GC,该GC适用于单CPU机器。2、第二种为Throughput GC,是多线程的GC,适用于多CPU,使用大量线程的程序。第二种GC与第一种GC相似,不同在于GC在收集Young区是多线程的,但在Old区和第一种一样,仍然采用单线程。-XX:+UseParallelGC参数启动该GC。3、第三种为Concurrent Low Pause GC,类似于第一种,适用于多CPU,并要求缩短因GC造成程序停滞的时间。这种GC可以在Old区的回收同时,运行应用程序。-XX:+UseConcMarkSweepGC参数启动该GC。4、第四种为Incremental Low Pause GC,适用于要求缩短因GC造成程序停滞的时间。这种GC可以在Young区回收的同时,回收一部分Old区对象。-Xincgc参数启动该GC。
单文件的JVM内存进行设置
默认的java虚拟机的大小比较小,在对大数据进行处理时java就会报错:java.lang.OutOfMemoryError。设置jvm内存的方法,对于单独的.class,可以用下面的方法对Test运行时的jvm内存进行设置。java -Xms64m -Xmx256m Test-Xms是设置内存初始化的大小-Xmx是设置最大能够使用内存的大小(最好不要超过物理内存大小)
tomcat启动jvm内存设置
在/usr/local/apache-tomcat-5.5.23/bin目录下的catalina.sh添加:JAVA_OPTS='-Xms512m -Xmx1024m'要加“m”说明是MB,否则就是KB了,在启动tomcat时会报内存不足。-Xms:初始值-Xmx:最大值-Xmn:最小值Windows在catalina.bat最前面加入set JAVA_OPTS=-Xms128m -Xmx350m 如果用startup.bat启动tomcat,OK设置生效.够成功的分配200M内存.但是如果不是执行startup.bat启动tomcat而是利用windows的系统服务启动tomcat服务,上面的设置就不生效了,就是说set JAVA_OPTS=-Xms128m -Xmx350m 没起作用.上面分配200M内存就OOM了..windows服务执行的是bin\tomcat.exe.他读取注册表中的值,而不是catalina.bat的设置.解决办法:
修改注册表HKEY_LOCAL_MACHINE\SOFTWARE\Apache Software Foundation\Tomcat Service Manager\Tomcat5\Parameters\JavaOptions
-Dcatalina.home="C:\ApacheGroup\Tomcat 5.0"-Djava.endorsed.dirs="C:\ApacheGroup\Tomcat 5.0\common\endorsed"-Xrs加入 -Xms300m -Xmx350m
重起tomcat服务,设置生效
weblogic启动jvm内存设置
在weblogic中,可以在startweblogic.cmd中对每个domain虚拟内存的大小进行设置,默认的设置是在commEnv.cmd里面。
默认可以使用的内存为64MB $JBOSSDIR$/bin/run.config JAVA_OPTS = "-server -Xms128 -Xmx512"
在所在目录下,键入 eclipse.exe -vmargs -Xms256m -Xmx512m 256m表示JVM堆内存最小值 512m表示JVM堆内存最大
进入控制台去设置:应用程序服务器 & server1 & 进程定义 & Java 虚拟机
【编辑推荐】
【责任编辑: TEL:(010)】
大家都在看猜你喜欢
原创原创原创热点头条
24H热文一周话题本月最赞
讲师:742282人学习过
讲师:127480人学习过
讲师:15610人学习过
精选博文论坛热帖下载排行
SQL Server 2005微软官方权威参考手册。
是Inside Microsoft SQL Server 2005系列书中的第一本,SQL Server类的顶尖之作。
全球公认SQL S...
订阅51CTO邮刊内存溢出类型
(1)java.lang.OutOfMemoryError: PermGen space&
JVM管理两种类型的内存,堆和非堆。堆是给开发人员用的上面说的就是,是在JVM启动时创建;非堆是留给JVM自己用的,用来存放类的信息的。它和堆不同,运行期内GC不会释放空间。如果web app用了大量的第三方jar或者应用有太多的class文件而恰好MaxPermSize设置较小,超出了也会导致这块内存的占用过多造成溢出,或者tomcat热部署时侯不会清理前面加载的环境,只会将context更改为新部署的,非堆存的内容就会越来越多。&
PermGen space的全称是Permanent Generation space,是指内存的永久保存区域,这块内存主要是被JVM存放Class和Meta信息的,Class在被Loader时就会被放到PermGen space中,它和存放类实例(Instance)的Heap区域不同,GC(Garbage
Collection)不会在主程序运行期对PermGen space进行清理,所以如果你的应用中有很CLASS的话,就很可能出现PermGen space错误,这种错误常见在web服务器对JSP进行pre compile的时候。如果你的WEB APP下都用了大量的第三方jar, 其大小超过了jvm默认的大小(4M)那么就会产生此错误信息了。&
(2)java.lang.OutOfMemoryError: Javaheap space&
第一种情况是个补充,主要存在问题就是出现在这个情况中。其默认空间(即-Xms)是物理内存的1/64,最大空间(-Xmx)是物理内存的1/4。如果内存剩余不到40%,JVM就会增大堆到Xmx设置的值,内存剩余超过70%,JVM就会减小堆到Xms设置的值。所以服务器的Xmx和Xms设置一般应该设置相同避免每次GC后都要调整虚拟机堆的大小。假设物理内存无限大,那么JVM内存的最大值跟操作系统有关,一般32位机是1.5g到3g之间,而64位的就不会有限制了。&
注意:如果Xms超过了Xmx值,或者堆最大值和非堆最大值的总和超过了物理内存或者操作系统的最大限制都会引起服务器启动不起来。
jvm设置虚拟内存
(1)JVM初始分配的内存由-Xms指定,默认是物理内存的1/64;JVM最大分配的内存由-Xmx指定,默认是物理内存的1/4。
(2)默认空余堆内存小于40%时,JVM就会增大堆直到-Xmx的最大限制;空余堆内存大于70%时,JVM会减少堆直到-Xms的最小限制。因此服务器一般设置-Xms、-Xmx相等以避免在每次GC
后调整堆的大小
(3)设置NewSize、MaxNewSize相等,且为Xmx的1/4&new&的大小最好不要大于&old&的一半,原因是old区如果不够大会频繁的触发&主&
GC ,大大降低了性能&
(4)-XX:PermSize设置非堆内存初始值,默认是物理内存的1/64;&
(5)-XX:MaxPermSize设置最大非堆内存的大小,默认是物理内存的1/4。
以上可在tomcat/bin目录下的catalina.sh中添加配置项如下:
JAVA_OPTS='
-server -Xms8096m -Xmx8096m -XX:PermSize=2048m -XX:MaxPermSize=8096m -XX:NewSize=1024m -XX:MaxNewSize=1024m'
&&相关文章推荐
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
访问:20392次
排名:千里之外
原创:33篇
个人主页:
微信:bigdataer
(2)(2)(3)(8)(3)(6)(1)(1)(2)(5)
(window.slotbydup = window.slotbydup || []).push({
id: '4740887',
container: s,
size: '250,250',
display: 'inlay-fix'}

我要回帖

更多关于 linux设置jvm内存参数 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信