先看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 调优参数设置的更多相关文章

  1. JVM调优参数设置?

    -Xms20M 表示设置堆容量的最小值为20M,必须以M为单位 -Xmx20M 表示设置堆容量的最大值为20M,必须以M为单位.将-Xmx和-Xms设置为一样可以避免堆自动扩展.大的项目-Xmx和-X ...

  2. JVM调优参数、方法、工具以及案例总结

    这种文章挺难写的,一是JVM参数巨多,二是内容枯燥乏味,但是想理解JVM调优又是没法避开的环节,本文主要用来总结梳理便于以后翻阅,主要围绕四个大的方面展开,分别是JVM调优参数.JVM调优方法(流程) ...

  3. 生产环境下JVM调优参数的设置实例

    JVM基础:生产环境参数实例及分析 原始配置: -Xms128m -Xmx128m -XX:NewSize=64m -XX:PermSize=64m -XX:+UseConcMarkSweepGC - ...

  4. JVM 调优参数详解

    GC有两种类型:Scavenge GC 和Full GC 1.Scavenge GC 一般情况下,当新对象生成,并且在Eden申请空间失败时,就会触发Scavenge GC,堆的Eden区域进行GC, ...

  5. 转: jvm调优参数总结

    JVM里的GC(Garbage Collection)的算法有很多种,如标记清除收集器,压缩收集器,分代收集器等等,详见HotSpot VM GC 的种类 现在比较常用的是分代收集(generatio ...

  6. 常用的JVM调优参数总结汇总【随时查阅学习】

    本文章参数根据后期用的参数会持续更新  --- (1)-Xms20M 表示设置JVM启动内存的最小值为20M,必须以M为单位 (2)-Xmx20M 表示设置JVM启动内存的最大值为20M,必须以M为单 ...

  7. JVM 调优参数解释

    典型配置: java -Xmx3800m -Xms3800m -Xmn2g -Xss128k -XX:+UseParallelGC -XX:ParallelGCThreads=20 -XX:+UseP ...

  8. jvm 调优参数

    -server -Xms6000M -Xmx6000M -Xmn500M -XX:PermSize=500M -XX:MaxPermSize=500M -XX:SurvivorRatio=65536 ...

  9. jvm调优参数

    堆溢出测试args:-verbose:gc -Xms20M -Xmx20M -XX:+PrintGCDetails 栈层级不足args:-Xss128k 常量池内存溢出args : -XX:PermS ...

随机推荐

  1. UVALive-4452 The Ministers' Major Mess (2-SAT)

    题目大意:有n个问题,m个人来投票,没人最多投4票,问该怎样决定才能使每个人都有超过一半的票数被认可? 题目分析:2-SAT问题.如果某个人投的票数少于2,则这两票军被采纳,如果票数至少三票,则最多有 ...

  2. 297. Serialize and Deserialize Binary Tree *HARD*

    Serialization is the process of converting a data structure or object into a sequence of bits so tha ...

  3. createjs记录坑

    1.使用preloadjs加载资源: manifest = [ {src: "block.png", id: "ground"}, {src: "re ...

  4. @ModelAttribute运用详解(二十一)

    @ModelAttribute使用详解 1.@ModelAttribute注释方法     例子(1),(2),(3)类似,被@ModelAttribute注释的方法会在此controller每个方法 ...

  5. STM32知识点纪要

    1.GPIO BSRR(端口位设置寄存器)是赋1相应IO拉高,赋0无影响 BRR(端口位清除寄存器)是是赋1相应IO拉低,赋0无影响 2.UART 连线TX—TX,RX—RX 3.JTAG和SWD接口 ...

  6. 旋转木马幻灯片切换效果JS源码详解

    首先,放上慕课网的课程链接,源码是在这个课程里分享出来的,https://www.imooc.com/learn/386. 文章适合学习过这个课程的同学,再看这篇文章,可能有更深入的理解.主要是对各种 ...

  7. PHP:第五章——字符串编码函数

    <?php header("Content-Type:text/html;charset=utf-8"); //1.base64_encode和base64_decode.6 ...

  8. centos7 搭建svn服务器&客户端的访问&备份迁移

    当今用于版本控制的软件程序主要的有svn和git,其它软件咱不熟悉,今天记录下搭建svn服务器和svn客户端使用: 使用环境:虚拟机为centos7系统,svn服务器安装在centos7系统平台上,s ...

  9. iOS笔记之网络

    用POST方式上传数据时,数组怎么处理? NSError *error; NSData *jsonData = [NSJSONSerialization dataWithJSONObject:data ...

  10. 别名的使用注意,""真坑。

    我们使用别名都是使用as关键字. 大多数时候我们都会省略as关键字,然后后面直接加别名就好了.我的习惯是别名用双引号括起来. 今天因为这个习惯坑了我一大波 首先oracle的别名的规则: AS 别名 ...