在线客服
扫描二维码
下载博学谷APP扫描二维码
关注博学谷微信公众号
JVM可以算是初级程序员进阶高级程序员必须要掌握的核心技能之一。另外,在许多面试过程中,JVM也是检验Java程序员能力水平的试金石。今天我们不谈Java底层实现的原理,而是为大家整理汇总了一些常见的JVM 配置参数,希望对大家编写代码有所帮助。
1.-Xms
初始堆大小。只要启动,就占用的堆大小。
2.-Xmx
最大堆大小。java.lang.OutOfMemoryError:Java heap这个错误可以通过配置-Xms和-Xmx参数来设置。
3.-Xss
栈大小分配。栈是每个线程私有的区域,通常只有几百K大小,决定了函数调用的深度,而局部变量、参数都分配到栈上。当出现大量局部变量,递归时,会发生栈空间OOM(java.lang.StackOverflowError)之类的错误。
4.XXNewSize
设置新生代大小的绝对值。
5.-XX:NewRatio
设置年轻代和年老代的比值。比如设置为3,则新生代:老年代=1:3,新生代占总heap的1/4。
6.-XX:MaxPermSize
设置持久代大小。java.lang.OutOfMemoryError:PermGenspace这个OOM错误需要合理调大PermSize和MaxPermSize大小。
7.-XX:SurvivorRatio
年轻代中Eden区与两个Survivor区的比值。注意,Survivor区有form和to两个。比如设置为8时,那么eden:form:to=8:1:1。
8.-XX:HeapDumpOnOutOfMemoryError
发生OOM时转储堆到文件,这是一个非常好的诊断方法。
9.-XX:HeapDumpPath
导出堆的转储文件路径。
10.-XX:OnOutOfMemoryError
OOM时,执行一个脚本,比如发送邮件报警,重启程序。后面跟着一个脚本的路径。
以上就是程序员常用的JVM 配置参数的所有汇总。大家想要深入学习JVM并掌握JVM虚拟机底层原理,可以在博学谷平台进行相关免费视频课程的在线学习。
— 申请免费试学名额 —
在职想转行提升,担心学不会?根据个人情况规划学习路线,闯关式自适应学习模式保证学习效果
讲师一对一辅导,在线答疑解惑,指导就业!
相关推荐 更多
Java入门基础之递归学习笔记
谈起递归,相信Java的程序员一定不陌生。递归算法是一种通过直接或者间接的方式,调用自身算法的过程。在Java开发中,递归算法可以解决许多问题,而且它往往使算法的描述更加简洁好理解。本文整理了Java入门基础中关于递归的有关知识点,内容包括了递归的介绍、递归的基本使用、递归的注意事项和递归求阶乘。
4993
2019-12-12 18:54:55
Java集合ArrayList教程学习路线分享
Java集合ArrayList教程学习路线分享,我们需要学习:ArrayList集合底层数据结构、ArrayList源码分析、ArrayList继承关系等相关知识,学习ArrayList基本应用,通过底层原理分析让大家更深层次的理解ArrayList,真正做到学以致用。
4381
2020-03-19 15:04:21
Spring Cloud Alibaba微服务架构项目实战学习目标
Spring Cloud Alibaba微服务架构项目实战学习目标,通过电商项目实现理解SpringCloud 生态中主流技术的用法及原理、掌握微服务架构的实际开发方法、能够轻松投入项目开发工作,增强面试能力、握处理问题以及整体规划的思维方式。
7645
2020-06-16 11:16:31
Zookeeper从入门到实践要学什么?
ZooKeeper是一种分布式协调服务,它用简单的架构和API,解决了在分布式环境中协调和管理服务的难题。那么,Zookeeper从入门到实践要学什么呢?以博学谷相关的免费课程为例,课程主要讲解了包括集群结构、集群配置、常用命令、部署模式、Zab协议、Dubbo架构等重要核心知识,并结合经典售票案例与实际应用。
4587
2020-06-26 18:22:26
JDK和Path环境变量如何配置?
JDK和Path环境变量如何配置?安装JDK 选择安装目录 安装过程中会出现两次 安装提示 。第一次安装 jdk ,第二次安装 jre 。两个都建议安装在同一个Java文件夹中的不同文件夹中。作为一个零基础准备入门Java菜鸟来说,首先安装配置适合自己的Java环境。
5073
2020-07-14 15:12:12