java启动如何设置JAR包内存大小,Java启动设置JAR包内存大小的方法指南

马肤

温馨提示:这篇文章已超过764天没有更新,请注意相关的内容是否还可用!

在Java中,可以通过设置JVM参数来配置JAR包的内存大小。使用-Xmx-Xms参数可以分别指定Java堆内存的最大值和初始值。要设置最大内存为2GB,初始内存为1GB,可以在启动命令中加入以下参数:java -Xmx2g -Xms1g -jar yourfile.jar。这种方式可以根据实际需求调整内存大小,优化程序性能。

这篇文章主要介绍了java启动如何设置JAR包内存大小问题,具有很好的参考价值,希望对大家有所帮助。

java启动设置JAR包内存大小

亲测可用!

java -Xms256m -Xmx512m -XX:PermSize=128M -XX:MaxPermSize=256M -jar a.jar

-Xms256m -Xmx512m: 对象使用的内存,也称堆内存

PermSize 类使用的内存,也称永久内存

由于Spring-boot内置tomcat,默认内存占用可能很大,最好设置下jar启动占用的内存。

给自己的jar包运行时分配内存大小

java -jar -Xms8m -Xmx8m -XX:PermSize=8M -XX:MaxPermSize=16M  bankmock-0.0.1-SNAPSHOT.jar

说明:

  • Xms:堆内存初始大小

  • Xmx:堆内存最大值

  • PermSize:永久内存初始大小

  • MaxPermSize:永久内存最大值

上边是启动jar包时设置的jvm参数;

自己打一个包,springboot搭建的,打包后40多兆。

java启动如何设置JAR包内存大小,Java启动设置JAR包内存大小的方法指南 第1张

当我们在windows上cmd进入启动的时候,当我设置的启动参数为:

java -jar -Xms8m -Xmx8m -XX:PermSize=8M -XX:MaxPermSize=16M  bankmock-0.0.1-SNAPSHOT.jar

java启动如何设置JAR包内存大小,Java启动设置JAR包内存大小的方法指南 第2张

会发现内存溢出了,说明我们分配的内存不够,最后我进行多次实验后,找到了最小值:

java -jar -Xms8m -Xmx16m -XX:PermSize=8M -XX:MaxPermSize=16M  bankmock-0.0.1-SNAPSHOT.jar

java启动如何设置JAR包内存大小,Java启动设置JAR包内存大小的方法指南 第3张

我们发现服务正常启动了。

JVM的一些参数设置

#常用的设置
-Xms:初始堆大小,JVM 启动的时候,给定堆空间大小。 
 
-Xmx:最大堆大小,JVM 运行过程中,如果初始堆空间不足的时候,最大可以扩展到多少。 
 
-Xmn:设置堆中年轻代大小。整个堆大小=年轻代大小+年老代大小+持久代大小。 
 
-XX:NewSize=n 设置年轻代初始化大小大小 
 
-XX:MaxNewSize=n 设置年轻代最大值
 
-XX:NewRatio=n 设置年轻代和年老代的比值。如: -XX:NewRatio=3,表示年轻代与年老代比值为 1:3,年轻代占整个年轻代+年老代和的 1/4 
 
-XX:SurvivorRatio=n 年轻代中 Eden 区与两个 Survivor 区的比值。注意 Survivor 区有两个。8表示两个Survivor :eden=2:8 ,即一个Survivor占年轻代的1/10,默认就为8
 
-Xss:设置每个线程的堆栈大小。JDK5后每个线程 Java 栈大小为 1M,以前每个线程堆栈大小为 256K。
 
-XX:ThreadStackSize=n 线程堆栈大小
 
-XX:PermSize=n 设置持久代初始值	
 
-XX:MaxPermSize=n 设置持久代大小
 
-XX:MaxTenuringThreshold=n 设置年轻带垃圾对象最大年龄。如果设置为 0 的话,则年轻代对象不经过 Survivor 区,直接进入年老代。
 
#下面是一些不常用的
 
-XX:LargePageSizeInBytes=n 设置堆内存的内存页大小
 
-XX:+UseFastAccessorMethods 优化原始类型的getter方法性能
 
-XX:+DisableExplicitGC 禁止在运行期显式地调用System.gc(),默认启用	
 
-XX:+AggressiveOpts 是否启用JVM开发团队最新的调优成果。例如编译优化,偏向锁,并行年老代收集等,jdk6纸之后默认启动
 
-XX:+UseBiasedLocking 是否启用偏向锁,JDK6默认启用	
 
-Xnoclassgc 是否禁用垃圾回收
 
-XX:+UseThreadPriorities 使用本地线程的优先级,默认启用	
 
等等等......

小结一下:

我们在自己开发项目的时候,需要部署到服务器上,那么运维人员会问你,你的项目需要多大内存才能启动起来呀,有的人就说管他的,越大越好,随便开口就说1024M,2048M等等,其实我们自己在本地测试一下就知道了呀



0
收藏0
文章版权声明:除非注明,否则均为VPS857原创文章,转载或复制请以超链接形式并注明出处。

相关阅读

  • 上海三菱主机换油封方案怎么样啊(三菱电梯更换油封),三菱电梯主机油封更换方案详解,三菱电梯主机油封更换方案详解,上海三菱主机换油封方案评估与解析,上海三菱电梯主机油封更换方案详解与评估解析,上海三菱电梯主机油封更换方案详解及评估解析,上海三菱电梯主机油封更换方案详解及效果评估解析,上海三菱电梯主机油封更换方案详解与效果评估解析,上海三菱电梯主机油封更换方案详解与效果评估解析
  • 医保定点零售药店备案表填错了怎么办(医保定点零售药店名称或法人变更登记表),医保定点零售药店备案表填错及名称或法人变更登记问题处理指南,医保定点零售药店备案表填错及名称法人变更处理指南,医保定点零售药店备案表填错及名称、法人变更处理指南,解决备案表填错与药店名称或法人变更问题,医保定点零售药店备案表填错及名称、法人变更处理指南与解决方案,医保定点零售药店备案表填错及名称、法人变更处理指南与解决方案详解,医保定点零售药店备案表填错及名称、法人变更处理指南详解,解决方案与操作指南
  • 怎么看联想主机型号(联想电脑怎么看主机型号),联想主机型号查看指南,轻松识别联想电脑主机型号,联想主机型号查看指南,轻松识别联想电脑主机型号,联想主机型号识别指南,轻松查看与识别联想电脑主机型号,联想电脑主机型号查看指南,轻松识别与查看联想主机型号,联想电脑主机型号查看指南,轻松识别与查看联想主机型号,联想电脑主机型号查看指南,轻松识别与查询联想主机型号,联想电脑主机型号查看全攻略,轻松识别与查询联想主机型号
  • 电脑主机接到显示器画面不清晰怎么调节(电脑主机接到显示器画面不清晰怎么调节),电脑主机连接显示器画面不清晰调节指南,电脑主机连接显示器画面不清晰调节指南,解决画面模糊问题的方法与步骤,电脑主机连接显示器画面不清晰调节指南,解决画面模糊问题的方法与步骤
  • 域名经常被劫持怎么办(域名被劫持怎么恢复),域名遭劫持如何应对与恢复策略,域名遭劫持怎么办?应对与恢复策略全解析,域名遭劫持应对策略与恢复解析,全面解析域名劫持应对与恢复策略,全面解析,域名遭劫持应对策略与恢复方法,全面解析,域名遭劫持应对策略与恢复方法指南,全面解析,域名遭劫持应对策略与恢复方法指南
  • 天津先进网站建设联系人怎么查(天津先进信息产品有限公司),天津先进信息产品有限公司网站建设联系人查询指南
  • 主机怎么加一条内存(怎么给主机加内存条),如何给主机增加内存条?详细步骤教程,如何给主机增加内存条?详细步骤教程及注意事项,如何给主机增加内存条?详细步骤教程及注意事项全解析
  • 可视对讲主机配置参数怎么看(可视对讲主机需要几根线),如何查看可视对讲主机配置参数及线路需求(需几根线),可视对讲主机配置参数详解及线路需求(包括查看方法与线路数量)
  • 发表评论

    快捷回复:表情:
    评论列表 (暂无评论,839人围观)

    还没有评论,来说两句吧...

    目录[+]

    取消
    微信二维码
    微信二维码
    支付宝二维码