Xmn、Xms、Xmx、Xss有什么区别以及异常
- -Xms 堆内存的初始大小,默认为物理内存的1/64。 -Xmx 堆内存的最大大小,默认为物理内存的1/4~1/2。 -Xmn 堆内新生代的大小。通过这个值也可以得到老生代的大小:-Xmx减去-Xmn。
-Xss 设置每个线程可使用的内存大小,即栈的大小。
在相同物理内存下,减小这个值能生成更多的线程,当然操作系统对一个进程内的线程数还是有限制的,不能无限生成。线程栈的大小是个双刃剑,如果设置过小,可能会出现栈溢出,特别是在该线程内有递归、大的循环时出现溢出的可能性更大,如果该值设置过大,就有影响到创建栈的数量,如果是多线程的应用,就会出现内存溢出的错误。
常规做法: Xms=Xmx=物理内存的1/2。 Xmn=1/2Xmx
举个栗子
APP_START_JVM_OPTION:::-Djsse.enableSNIExtension=false -Xmx2G -Xms2G
-Xmn1G -XX:MetaspaceSize=256m -XX:MaxMetaspaceSize=256m -Dspring.config.location=classpath:application.properties,classpath:client.properties,classpath:client.properties
-D.log.config-location=classpath:application.properties -D.log.reload-scan-mills=40000 -D.log.enabled=true -D.server.web-environment=true -Duser.language=zh
异常:
如上参数设置不当,会导致fullgc频繁。
fullgc频繁的表现:CPU飙高、内存异常。也可能存在内存泄漏out of Memory。
Xmn、Xms、Xmx、Xss有什么区别以及异常相关推荐
- 5.JVM三大性能调优参数:-Xms -Xmx -Xss
1.-Xss是对每个线程stack大小的调整.直接影响对方法的调用次数 测试结果: 测试代码: package com.dt.spark.jvm.basics; public class HelloS ...
- JVM常用参数(-Xms/-Xmx/-Xss/-Xmn)
1.JVM涉及的空间:堆:包括年轻代与老年代+字符串常量池,年轻代由一个Eden与两个Survivor区.方法区:持久代与元空间都是方法区的实现,JDK1.8改为元空间. 2.JVM参数设置,先来看服 ...
- Xms Xmx Xss 释义
Xms 是指设定程序启动时占用内存大小.一般来讲,大点,程序会启动的快一点,但是也可能会导致机器暂时间变慢. Xmx 是指设定程序运行期间最大可占用的内存大小.如果程序运行需要占用更多的内存,超出了这 ...
- 第5课:实战演示jvm三大性能调优参数:-xms -xmx -xss
内容: 1.实战演示-Xss性能调优参数 2.实战演示-Xms.-Xmx性能调优参数 一.实战演示-Xss性能调优参数 Java每个线程的Stack大小.JDK5.0以后每个线程堆栈大小为1M,以前每 ...
- Java -Xms -Xmx -Xss -XX:MaxNewSize -XX:MaxPermSize含义记录
出现java.lang.OutOfMemoryError异常时,常使用的方法便是将如下配置语句: -Xms512m -Xmx512m -Xss1024k -XX:MaxNewSize=256M -XX ...
- Xms Xmx PermSize MaxPermSize的区别
1.参数的含义 vmargs -Xms 128M -Xmx 512M -XX:PermSize=64M -XX:MaxPermSize=128M -vmargs 代表后面是设置jvm的参数 -Xms ...
- JVM优化之 -Xss -Xms -Xmx -Xmn 参数设置简介说明
转自: JVM优化之 -Xss -Xms -Xmx -Xmn 参数设置简介说明 下文笔者讲述JVM参数中常见的"-Xss -Xms -Xmx -Xmn"功能简介说明,如下所示: - ...
- java jvm 参数 -Xms -Xmx -Xmn -Xss 调优总结
常见配置举例 堆大小设置 JVM 中最大堆大小有三方面限制:相关操作系统的数据模型(32-bt还是64-bit)限制;系统的可用虚拟内存限制;系统的可用物理内存限制.32位系统 下,一般限制在1.5G ...
- xms java_java xms xmx xmn xss解释
java xms xmx xmn xss解释 Xmx是java的一个选项,用来设置你的应用程序能够使用的最大内存数(是应用程序,不是整个jvm),如果你的程序要花很大内存的话,那就需要修改缺省的设置, ...
最新文章
- 软件测试领域的中心化与去中心化
- 19岁大学生网恋被骗318万!见到“女神”后傻了,对方竟有200斤!
- 比Segway轻便的机器人溜冰鞋
- pyV8不支持dom操作,关于PyV8的支持DOM的疑问
- VTK:图片之ImageSeparableConvolution
- c++ 线程间通信方式
- android 字体 动画,android 对绘制的文本添加动画
- git安装错误:can not read system config
- emif接口速率问题_OMAPL138 EMIF读取速率问题
- 董付国老师1900页系列Python教学PPT阅读地址汇总
- Markdown语法014:浏览器兼容
- 使用git可视化工具上传你修改的代码
- Python运行报错most recent call last
- 回文联对联大全_回文对联大全
- JavaScript学习笔记(条件判断)
- 重要信息通知短信解决方案
- 基于微信小程序的水果丨蔬菜丨农产品商城系统源码(SSM与Springboot版本均有)
- 【转】iOS游戏/应用的营销及推广技巧(2)
- bmob php支付,个人开发者也能盈利!Bmob支付SDK使用实例
- Please don't stop rua 233333