java xms xmx xmn_JAVA 虚拟机JVM参数调优(1)-Xms -Xmx -Xmn
随着服务器内存和CPU核数据越来越多,如何充分利用服务器硬件资源?如下图所示JAVA官方公布图一,说明单个CPU服务器垃圾收集造成吞吐量降低1%,30核CPU效率下降20%,查看下图中红色线条。
本文主要描述和研究https://www.spec.org/ 公开JVM性能报告,本文采用jbb2015测试结果中使用DELL服务器R640测试报告。JVM虚拟机中哪些参数对系统性能和吞吐量影响巨大。本文主要研究在相同CPU计算能力,采用不同内存配置,如何显著影响到程序性能。
根据公开jbb2015测试结果选取DELL服务器R640 2个测试报告,测试报告中硬件配置除了内存768G和384G差异之外,其他硬件配置都相同2个28核2.5GHz Intel Xeon-SP 8180M CPU,操作系统都采用SUSE Linux Enterprise Server 12 SP2版本,虚拟机采用Oracle Java SE 8u131版本,如下图所示。
测试JVM参数除了红色部分使用内存不同之外,其他参数都相同如下:
-showversion -server -XX:+AlwaysPreTouch -XX:+UseParallelOldGC -XX:-UseAdaptiveSizePolicy -XX:MaxTenuringThreshold=15 -XX:+PrintTenuringDistribution -XX:-UseBiasedLocking -XX:+AggressiveOpts -XX:+UseLargePages -XX:LargePageSizeInBytes=2m -XX:SurvivorRatio=26 -XX:TargetSurvivorRatio=95 -Xms180g -Xmx180g -Xmn178g -XX:ParallelGCThreads=28 -XX:+PrintGCDetails -XX:+PrintGCTimeStamps
-showversion -server -XX:+AlwaysPreTouch -XX:+UseParallelOldGC -XX:-UseAdaptiveSizePolicy -XX:MaxTenuringThreshold=15 -XX:+PrintTenuringDistribution -XX:-UseBiasedLocking -XX:+AggressiveOpts -XX:+UseLargePages -XX:LargePageSizeInBytes=2m -XX:SurvivorRatio=26 -XX:TargetSurvivorRatio=95 -Xms29g -Xmx29g -Xmn27g -XX:ParallelGCThreads=28 -XX:+PrintGCDetails -XX:+PrintGCTimeStamps
我们再来看看测试结果如下图所示:
max-jOPS差异不大,主要是原因CPU相同,因此服务器计算性能几乎相同;
但critical-jOPS差异还是和明显,参见黄线和绿线;JVM 29g的critical-jOPS得分43257,JVM180g critical-jOPS得分69059;critical-jOPS主要在1秒钟完成计算结果并且成功返回,互联网很多应用都需要及时反馈用户响应。
结论:增加JVM内存将明显提高JVM运行响应速度,但不是线性增长,内存相差6倍,性能提升50%,这个JVM运行的程序相关。-Xms -Xmx -Xmn参数对于优化JVM虚拟机运行参数非常重要;必须要了解JVM运行程序最大max heap,同时将大部分内存留给年轻代。-Xms180g -Xmx180g -Xmn178g 虚拟机最大分配180g,初始化分配180g,年轻代分配178g。
java xms xmx xmn_JAVA 虚拟机JVM参数调优(1)-Xms -Xmx -Xmn相关推荐
- JVM参数调优总结 -Xms -Xmx
"-Xmx1024m -Xms1024m -Xmn512m -Xss256k"--Java运行参数(转) JVM的堆的内存, 是通过下面面两个参数控制的 -Xms 最小堆的大小, ...
- JVM参数调优总结 -Xms -Xmx -Xmn -Xss
"-Xmx1024m -Xms1024m -Xmn512m -Xss256k"--Java运行参数(转) JVM的堆的内存, 是通过下面面两个参数控制的 -Xms 最小堆的大小, ...
- Java面试之JVM参数调优
JVM参数调优 前言 你说你做过JVM调优和参数配置,请问如何盘点查看JVM系统默认值 使用jps和jinfo进行查看 -Xms:初始堆空间 -Xmx:堆最大值 -Xss:栈空间 -Xms 和 -Xm ...
- Java JVM参数调优配置
JVM参数调优配置 Java虚拟机原理 Java内存结构 堆.栈.方法区概念区别 Java堆 Java栈 Java方法区 虚拟机参数配置 什么是虚拟机参数配置 堆的参数配置 设置最大堆内存 设置新生代 ...
- Java架构学习(十二)java内存结构新生代老年代JVM参数调优堆内存参数配置解决堆栈溢出
JVM参数调优与垃圾回收机制 一.java内存结构 Java内存模型:是多线程里面的,jmm与线程可见性有关 Java内存结构:是JVM虚拟机存储空间. Java内存结构图 Java内存机构分为:方法 ...
- JVM参数调优,无停滞实践
参考:http://www.cjsdn.net/post/print?bid=62&id=198084 JVM参数调优是个很头痛的问题,设置的不好,JVM不断执行Full GC,导致整个系统变 ...
- JVM参数调优详细过程
本文来说下讲一下JVM参数调优详细过程 文章目录 概述 概述
- JVM参数调优利器 —— XXFox
好东西就是要拿出来与大家分享,本篇介绍一款可视化.能根据不同环境提供优化建议的JVM参数调优工具. 一只懂JVM参数的狐狸,来自于PerfMa.旨在帮助大家更好地了解JVM参数,使用JVM参数,并对现 ...
- java虚拟机调优_Java虚拟机中JVM参数调优及其有用的命令
3.1参数及调优 1.-XX:-HeapDumpOnOutOfMemoryError:当首次遭遇内存溢出时Dump出此时的堆内存. 2.-XX:HeapDumpPath=./java_pid.hpro ...
最新文章
- iOS 取四舍五入取平均值
- android siri 源码,Android的SIRI 。
- windows下python搭建网站_Windows平台下搭建Pytest
- 清除重复记录只保留一条
- Java的io类的使用场景
- 2019长安大学ACM校赛网络同步赛 L	XOR (规律,数位DP)
- bash shell函数的定义及变量的简单说明
- MySql 你知道 order by 是怎么回事吗? MySql全字段排序与 rowid 排序
- 第14章 使用Kotlin 进行 Android 开发
- java 单例模式_谈谈Java中的单例模式
- ibm服务器单盘从装系统,thinkpad系统重装图文详解
- Python数据可视化 Pyecharts 制作 Map3D 三维地图
- 图解 Python 编程(5) | 运算符(附要点速查表·完结)
- 《线性代数》同济六版 总结
- VB2010的串口能正常接收数据,但无法发送数值大于127的数据
- SSMS(sql server管理工具)修改表不允许保存
- 计算机电源管理器怎么打开,联想电源管理软件打不开怎么办
- java冒泡排序代码
- 下载keep运动软件_Keep下载_Keep安卓版下载_Keep app下载-太平洋下载中心
- Cadence OrCAD Capture原理图检查之逐个元件Part检查的方法
热门文章
- sparkSQL之调优
- 4,Java三目运算符和数组
- CSS学习笔记之选择器(一)
- JetBrain(Pycharm,Clion...)的使用优化
- SpringCloud微服务-----面试内容
- linux防火墙(firewalld和iptables)
- 云原生的前世今生(一)
- oracle trunc 函数处理日期格式
- 独立站即web3.0,国家“十四五“规划要求企业建数字化网站!
- cntk 2.5 win10 vs2017 编译(Cpuonly)