Java Jar包项目内存设置方法举例

 更新时间:2024年01月03日 09:37:44   作者:Ocean@上源码  
这篇文章主要给大家介绍了关于Java Jar包项目内存设置方法的相关资料,文中通过代码介绍的非常详细,对大家的学习或者工作具有一定的参考借鉴价值,需要的朋友可以参考下

一、默认占用内存

64位操作系统,默认最小堆内存大小256M,最大内存为1/4可用系统内存。

二、设置指定内存大小

2.1 Java8之前

-Xms512M -Xmx512M -XX:PermSize=64M -XX:MaxPermSize=128M

-Xms128m JVM初始分配的堆内存

-Xmx512m JVM最大允许分配的堆内存,按需分配

-XX:PermSize=64M JVM初始分配的永久代内存大小

-XX:MaxPermSize=128M JVM最大允许分配的永久代内存,按需分配

java -jar -Xms512M -Xmx512M -XX:PermSize=64M -XX:MaxPermSize=128M xxx-0.0.1-SNAPSHOT.jar

2.2 Java8之后

-Xms512M -Xmx512M -XX:MetaspaceSize=128M -XX:MaxMetaspaceSize=128M

-XX:MetaspaceSize=128M (元空间默认大小)

-XX:MaxMetaspaceSize=128M (元空间最大大小)

元空间(Metaspace)在Java8之后取代了永久代(Permanent Generation (PermGen))

Metaspace 的大小是动态变化的,并且默认情况下没有明确的上限(取决于系统内存大小)。

java -jar -Xms512M -Xmx512M -XX:MetaspaceSize=128M -XX:MaxMetaspaceSize=128M xxx-0.0.1-SNAPSHOT.jar

三、-Xms = -Xmx的好处

优点:避免由于heap内存扩大或缩小导致应用停顿。
避免垃圾回收完成后JVM重新分配内存。

不足:减少垃圾回收的频率,增加垃圾回收时的暂停时间。

附:后台运行Jar包并设置内存参数

nohup java -Xms800m -Xmx800m -XX:PermSize=256m -XX:MaxPermSize=512m -XX:MaxNewSize=512m -jar 你的jar包 >>/dev/null &

总结

到此这篇关于Java Jar包项目内存设置方法的文章就介绍到这了,更多相关Java Jar包内存设置内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • Java进阶教程之运行时类型识别RTTI机制

    Java进阶教程之运行时类型识别RTTI机制

    这篇文章主要介绍了Java进阶教程之运行时类型识别RTTI机制,在Java运行时,RTTI维护类的相关信息,比如多态(polymorphism)就是基于RTTI实现的,需要的朋友可以参考下
    2014-09-09
  • SpringBoot 并发登录人数控制的实现方法

    SpringBoot 并发登录人数控制的实现方法

    这篇文章主要介绍了SpringBoot 并发登录人数控制的实现方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-05-05
  • java基于jdbc连接mysql数据库功能实例详解

    java基于jdbc连接mysql数据库功能实例详解

    这篇文章主要介绍了java基于jdbc连接mysql数据库功能,结合实例形式详细分析了jdbc连接mysql数据库的原理、步骤、实现方法及相关操作技巧,需要的朋友可以参考下
    2017-10-10
  • springboot配置logback日志管理过程详解

    springboot配置logback日志管理过程详解

    这篇文章主要介绍了springboot配置logback日志管理过程详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2019-09-09
  • Spring框架+jdbcTemplate实现增删改查功能

    Spring框架+jdbcTemplate实现增删改查功能

    这篇文章主要介绍了Spring框架+jdbcTemplate实现增删改查功能,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2021-09-09
  • 手把手教你如何搭建SpringBoot+Vue前后端分离

    手把手教你如何搭建SpringBoot+Vue前后端分离

    这篇文章主要介绍了手把手教你如何搭建SpringBoot+Vue前后端分离,前后端分离是目前开发中常用的开发模式,达成充分解耦,需要的朋友可以参考下
    2023-03-03
  • Java数据结构之链表相关知识总结

    Java数据结构之链表相关知识总结

    今天给大家带来关于Java数据结构的相关知识,文章围绕Java链表展开,文中有非常详细的介绍及代码示例,需要的朋友可以参考下
    2021-06-06
  • SpringBoot整合Drools的实现步骤

    SpringBoot整合Drools的实现步骤

    Drools是一个易于访问企业策略、易于调整以及易于管理的开源业务规则引擎,符合业内标准,速度快、效率高。业务分析师或审核人员可以利用它轻松查看业务规则,从而检验是否已编码的规则执行所需的业务规则。本文将讲述SpringBoot整合Drools的步骤
    2021-05-05
  • Java11中的新增字符串APIs使用实例探究

    Java11中的新增字符串APIs使用实例探究

    这篇文章主要为大家介绍了Java11中的新增字符串APIs使用实例探究,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2024-01-01
  • Java实现向数组里添加元素

    Java实现向数组里添加元素

    这篇文章主要介绍了Java实现向数组里添加元素方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2023-11-11

最新评论