JVM 调优参数设置
先看Linux内存大小(假设为2G)
cat /proc/meminfo |grep MemTotal
查看java初始配置
java -XX:+PrintFlagsInitial
Tomcat配置
export JAVA_OPTS="-server -Xms*M -Xmx*M ***"
-server 即tomcat以真实的production模式运行(更好的性能), 默认为-client模式
详细配置
#最大堆内存
-Xmx1400M
#初始堆内存
-Xms1400M
#年轻代 内存
-Xmn200M
#持久代 内存,(JDK1.7 )
-XX:PermSize=100M
-XX:MaxPermSize=100M
#元空间 内存(JDK1.8) https://www.cnblogs.com/dennyzhangdd/p/6770188.html
-XX:MetaspaceSize=100m
-XX:MaxMetaspaceSize=100m
#单个线程 的内存, 小项目128k一般较大项目256K够了
-Xss256K
#关闭System.gc()
-XX:+DisableExplicitGC
# Eden区与Survivor区的大小比值 设置为8,则Eden区:Survivor=8:2, 一个Survivor区占整个年轻代的1/10
#设置为1, 则Eden区:Survivor=1:2,(Survivor固定为2) 所以Eden区= Xmn200m/3=66.6M
-XX:SurvivorRatio=1
#设置并发收集器
-XX:+UseConcMarkSweepGC
#设置年轻代为并行收集
-XX:+UseParNewGC
#降低标记停顿
-XX:+CMSParallelRemarkEnabled
#在FULL GC的时候, 对年老代的压缩
-XX:+UseCMSCompactAtFullCollection
#多少次后进行内存压缩 由于并发收集器不对内存空间进行压缩,整理,所以运行一段时间以后会产生"碎片",使得运行效率降低.此值设置运行多少次GC以后对内存空间进行压缩,整理.
-XX:CMSFullGCsBeforeCompaction=0
-XX:+CMSClassUnloadingEnabled
#内存页的大小不可设置过大, 会影响Perm的大小
-XX:LargePageSizeInBytes=128M
#原始类型的快速优化
-XX:+UseFastAccessorMethods
#使用手动定义初始化定义开始CMS收集 禁止hostspot自行触发CMS GC
-XX:+UseCMSInitiatingOccupancyOnly
#(Xmx-Xmn)*(100-CMSInitiatingOccupancyFraction)/100>=Xmn 就不会出现promotion failed
-XX:CMSInitiatingOccupancyFraction=80
#每兆堆空闲空间中SoftReference的存活时间 一般为0
-XX:SoftRefLRUPolicyMSPerMB=0
#garbage collects before printing the histogram.
-XX:+PrintClassHistogram
#GC 输出的形式
-XX:+PrintGCDetails
#GC 输出的形式 可与 -XX:+PrintGC -XX:+PrintGCDetails混合使用
-XX:+PrintGCTimeStamps
#打印GC前后的详细堆栈信息
-XX:+PrintHeapAtGC
#把相关日志信息记录到文件以便分析.
-Xloggc:log/gc.log
参考 配置收集器,
https://blog.csdn.net/wfh6732/article/details/57422967?utm_source=itdadao&utm_medium=referral
JVM 调优参数设置的更多相关文章
- JVM调优参数设置?
-Xms20M 表示设置堆容量的最小值为20M,必须以M为单位 -Xmx20M 表示设置堆容量的最大值为20M,必须以M为单位.将-Xmx和-Xms设置为一样可以避免堆自动扩展.大的项目-Xmx和-X ...
- JVM调优参数、方法、工具以及案例总结
这种文章挺难写的,一是JVM参数巨多,二是内容枯燥乏味,但是想理解JVM调优又是没法避开的环节,本文主要用来总结梳理便于以后翻阅,主要围绕四个大的方面展开,分别是JVM调优参数.JVM调优方法(流程) ...
- 生产环境下JVM调优参数的设置实例
JVM基础:生产环境参数实例及分析 原始配置: -Xms128m -Xmx128m -XX:NewSize=64m -XX:PermSize=64m -XX:+UseConcMarkSweepGC - ...
- JVM 调优参数详解
GC有两种类型:Scavenge GC 和Full GC 1.Scavenge GC 一般情况下,当新对象生成,并且在Eden申请空间失败时,就会触发Scavenge GC,堆的Eden区域进行GC, ...
- 转: jvm调优参数总结
JVM里的GC(Garbage Collection)的算法有很多种,如标记清除收集器,压缩收集器,分代收集器等等,详见HotSpot VM GC 的种类 现在比较常用的是分代收集(generatio ...
- 常用的JVM调优参数总结汇总【随时查阅学习】
本文章参数根据后期用的参数会持续更新 --- (1)-Xms20M 表示设置JVM启动内存的最小值为20M,必须以M为单位 (2)-Xmx20M 表示设置JVM启动内存的最大值为20M,必须以M为单 ...
- JVM 调优参数解释
典型配置: java -Xmx3800m -Xms3800m -Xmn2g -Xss128k -XX:+UseParallelGC -XX:ParallelGCThreads=20 -XX:+UseP ...
- jvm 调优参数
-server -Xms6000M -Xmx6000M -Xmn500M -XX:PermSize=500M -XX:MaxPermSize=500M -XX:SurvivorRatio=65536 ...
- jvm调优参数
堆溢出测试args:-verbose:gc -Xms20M -Xmx20M -XX:+PrintGCDetails 栈层级不足args:-Xss128k 常量池内存溢出args : -XX:PermS ...
随机推荐
- Eclips安装SVN插件
1.eclipse -> Help ->Install New Software->add 2.弹出窗的"Name"和"URL"中输入如下内容 ...
- Java LRU的实现
最近在leetcode上做题的时,看到了一道有关LRU Cache的题目,正好我当初面试阿里巴巴的时候问到的.主要采用linkedHashMap来实现. package edu.test.algori ...
- Vivado_MicroBlaze_问题及解决方法_汇总(不定时更新)
Vivado_MicroBlaze_问题及解决方法_汇总(不定时更新) 标签: Vivado 2015-07-03 14:35 4453人阅读 评论(0) 收藏 举报 分类: 硬件(14) 版权声 ...
- Struts2基本使用(三)--数据交互
Struts2中的数据交互 在Struts2中我们不必再使用request.getParameter()这种方式来获取前台发送到服务器的参数. 我们可以在服务器端的Java类中直接声明一个和前台发送数 ...
- new BigDecimal(0.01) 与 new BigDecimal(String.valueOf(0.01))的区别 (转)
转自:http://blog.csdn.net/major1985/article/details/50210293 一般我们使用BigDecimal进行比较精密的计算,我这里计算金额.注意使用dou ...
- idea装在spring框架报ClassNotFound(转)
原文链接:http://blog.csdn.net/getyouwant/article/details/50417030 环境:intellij 15 ,spring 3.1 本来新建了一个spri ...
- 201621123010 《Java程序设计》第1周学习总结
1. 本周学习总结 本周主要学习了五个知识点 Java是面向对象的语言 JDK,JRE,JVM的联系 javac及java指令 Java跨平台运行的原理 新概念:类,类是面向对象中的概念 2. 书面作 ...
- L205 EE
As an Electrical Engineer at P, you will: Design, build, and verify PCBAsCreate, modify, and update ...
- 同时发出 ajax 拿到正确的返回值问题
方案 大概意思就是前端在data里面 传一个标示给后台, 后台再ajax返回的时候携带这个标示
- (转)Web系统大规模并发——电商秒杀与抢购
电商的秒杀和抢购,对我们来说,都不是一个陌生的东西.然而,从技术的角度来说,这对于Web系统是一个巨大的考验.当一个Web系统,在一秒钟内收到数以万计甚至更多请求时,系统的优化和稳定至关重要.这次我们 ...