JVM——虚拟机参数配置学习记录

5 篇文章 1 订阅

一、虚拟机参数配置文档

官方文档一
官方文档二

二、配置分析说明

参数理解:https://www.cnblogs.com/likehua/p/3369823.html

1、初始配置

-Xms128m                           // 初始堆大小
-Xmx128m                           // 最大堆大小
-XX:NewSize=64m                    // 设置年轻代大小
-XX:PermSize=64m  
-XX:+UseConcMarkSweepGC  
-XX:CMSInitiatingOccupancyFraction=78 
-XX:ThreadStackSize=128k-Xloggc:logs/gc.log  
-Dsun.rmi.dgc.server.gcInterval=3600000 
-Dsun.rmi.dgc.client.gcInterval=3600000 
-Dsun.rmi.server.exceptionTrace=true

-XX:PermSize

JVM使用设置非堆内存初始值,默认是物理内存的1/64,
在数据量的很大的文件导出时,一定要把这两个值设置上,否则会出现内存溢出的错误。
由XX:MaxPermSize设置最大非堆内存的大小,默认是物理内存的1/4。
那么,如果是物理内存4GB,那么64分之一就是64MB,这就是PermSize默认值,也就是永生代内存初始大小;
四分之一是1024MB,这就是MaxPermSize默认大小。

源自:https://blog.51cto.com/sucre/558133

-XX:NewSize 和 -Xmn

<1> -XX:newSize:表示新生代初始内存的大小,应该小于-Xms的值;
<2> -XX:MaxnewSize:表示新生代可被分配的内存的最大上限;当然这个值应该小于-Xmx的值;
<3> -Xmn:至于这个参数则是对 -XX:newSize、-XX:MaxnewSize两个参数的同时配置,
也就是说如果通过-Xmn来配置新生代的内存大小,那么-XX:newSize = -XX:MaxnewSize = -Xmn,虽然会很方便,
但需要注意的是这个参数是在JDK1.4版本以后才使用的。

问题:

<a> permsize 设置较小,很容易达到报警范围(0.8)
<b> 没有设置MaxPermSize,堆增长会带来额外压力。
<c> NewSize较大,old gen 剩余空间64m,
	一方面可能会带来old区容易增长到报警范围(监控数据显示oldgenused长期在50m左右,接近78%,容易出现full gc),
	另一方面也存在promontion fail风险。```

https://www.cnblogs.com/gxyandwmm/p/9456955.html

三、其它

-Xss //选置栈内存的大小
-XX:NewRatio=n:     //设置年轻代和年老代的比值。比如设置为3,表示年轻代与年老代比值为1:3
-XX:SurvivorRatio=n: //年轻代中Eden区与两个Survivor区的比值。注意Survivor区有两个。比如设置为3,表示Eden:Survivor=3:2,一个Survivor区占整个年轻代的1/5。

https://www.cnblogs.com/shamo89/p/9806718.html

https://blog.csdn.net/yswKnight/article/details/79372276

https://blog.csdn.net/jackyzheng/article/details/70786746

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: idea的JVM参数可以在运行/调试配置中进行配置。 具体步骤如下: 1. 打开IntelliJ IDEA。 2. 点击菜单栏的"Run",选择"Edit Configurations"(或者按下Shift + Alt + F10)。 3. 在左侧的配置列表中选择你要配置JVM参数配置项,例如"Application"。 4. 在右侧的配置面板中,找到"VM options"(或者"VM options"),点击右侧的"+"图标添加JVM参数。 5. 在弹出的对话框中,输入你想要配置JVM参数,例如"-Xmx512m"(表示设置最大堆内存为512MB)。 6. 点击"OK"保存配置。 这样,在运行或者调试你的应用程序时,IDEA会使用你配置JVM参数。 需要注意的是,不同的配置项可能有不同的配置方式,具体的JVM参数配置取决于你使用的配置项类型。所以建议在配置JVM参数之前,先了解清楚你要配置的那个配置项的具体配置方式。 ### 回答2: 在Java虚拟机JVM)中,可以通过命令行参数配置文件来配置JVM参数。具体来说,可以在以下位置配置JVM参数: 1. 命令行参数:可以在命令行中使用"-D"选项来配置JVM参数。例如,可以使用"java -D参数名=参数值"的命令来配置JVM参数。这些参数会直接传递给JVM,并在程序运行时生效。 2. 环境变量:可以通过设置JVM相关的环境变量来配置JVM参数。例如,可以使用"export 参数名=参数值"的命令来设置环境变量,在程序启动时JVM会读取这些环境变量并加载对应的参数。 3. 配置文件:可以通过修改JVM配置文件来配置JVM参数。不同的JVM实现可能有不同的配置文件,常见的包括"jvm.ini"、"jvm.conf"或"jvm.properties"等。通过编辑这些文件并添加或修改相应的参数,可以配置JVM的行为。 需要注意的是,JVM参数可以根据具体的需求进行不同的配置。其中一些常见的JVM参数包括堆内存大小、垃圾回收策略、类路径、编译优化等。这些参数配置可以对程序的性能和行为产生重要影响,因此需要根据实际情况进行合理的调整和配置。 ### 回答3: Idea的JVM参数可以在其安装目录下的bin目录中的idea64.exe.vmoptions或idea.exe.vmoptions文件中配置。 可以按照以下步骤进行配置: 1. 首先,找到你的Idea安装目录,进入bin目录。 2. 在该目录下,你可以看到两个文件:idea64.exe.vmoptions和idea.exe.vmoptions。前者适用于64位操作系统,后者适用于32位操作系统。 3. 打开适用于你系统的文件(通过右键单击并选择"编辑"或使用任何文本编辑器打开)。 4. 在打开的文件中,你可以看到一系列以"-D"开头的行,每行都表示一个JVM参数。在这里你可以添加、修改或删除参数。 5. 添加/修改参数后,保存文件并重新启动Idea,新的JVM参数将生效。 请注意,修改JVM参数可能对Idea的性能和行为产生重大影响,因此在修改之前建议备份原始文件。同时,确保你理解所做更改的含义和影响,以免引起其他问题。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值