一份8G内存Tomcat服务器的JVM垃圾回收G1算法参数清单

Tomcat 配置 jvm GC CENTOS7 中,对于已安装Tomcat 配置 JVM 阅读详情

一份8G内存Tomcat服务器的JVM垃圾回收G1算法参数清单

目前网上大多是CMS相关参数的介绍,推荐JDK 1.8

注意一下参数是针对G1算法的参数设置,目前只是理论设置,未经实战检验过。

每个系统的业务类型不一样,可以根据自己需要修改配置参数。

最终的JVM参数,应该经过JMX实时监控结果、堆分析、线程栈分析来一步步调优

推荐可视化监控工具:MAT、VisualVM、JMC

详细参数的意思大家可以参考官网的解释:


-server 
-Djava.library.path=/usr/local/apr/lib 
-Djava.io.tmpdir=/tmp 
-Xss228K 
-Xms4500m 
-Xmx4500m 
-XX:MetaspaceSize=386m 
-XX:MaxMetaspaceSize=386m 
-XX:MaxDirectMemorySize=1024m 
-XX:InitialCodeCacheSize=32m 
-XX:ReservedCodeCacheSize=256m 
-XX:MinMetaspaceFreeRatio=40 
-XX:MaxMetaspaceFreeRatio=70 
-XX:-UseLargePagesInMetaspace 
-XX:InitialCodeCacheSize=96m 


-XX:+UseG1GC 
-XX:G1HeapRegionSize=2m 
-XX:InitiatingHeapOccupancyPercent=45 
-XX:MaxGCPauseMillis=200 
-XX:GCPauseIntervalMillis=201 
-XX:ParallelGCThreads=4 
-XX:ConcGCThreads=1 
-XX:NewRatio=2 
-XX:SurvivorRatio=8 
-XX:TargetSurvivorRatio=50 
-XX:InitialTenuringThreshold=7 
-XX:MaxTenuringThreshold=15 
-XX:G1ReservePercent=10 


-Dsun.rmi.dgc.server.gcInterval=7200000 
-Ddruid.registerToSysProperty=true 
-XX:+UseTLAB 
-XX:+ResizeTLAB 
-XX:TLABSize=64k 
-XX:TLABRefillWasteFraction=64
-XX:OnStackReplacePercentage=140  
-XX:BackEdgeThreshold=10000 
-XX:CompileThreshold=1000 
-XX:-BackgroundCompilation 
-XX:LargePageSizeInBytes=0  
-XX:-OmitStackTraceInFastThrow 
-XX:-DisableExplicitGC 
-XX:-ExplicitGCInvokesConcurrent 
-XX:-ExplicitGCInvokesConcurrentAndUnloadsClasses 
-XX:+UnlockExperimentalVMOptions 
-XX:+AggressiveOpts 
-XX:+UseFastAccessorMethods 
-XX:+OptimizeStringConcat 
-XX:+UseCompressedOops  
-XX:+ScavengeBeforeFullGC 
-XX:+AlwaysPreTouch 
-XX:+UseGCOverheadLimit 
-XX:+UseThreadPriorities 
-XX:+UseCodeCacheFlushing 
-XX:+DoEscapeAnalysis 
-XX:+EliminateAllocations 
-XX:+EliminateLocks 
-XX:+UseStringDeduplication 
-XX:-UseBiasedLocking 
-XX:BiasedLockingStartupDelay=0 
-XX:AutoBoxCacheMax=20000 
-XX:+PerfDisableSharedMem 
-XX:+EliminateLocks 
-XX:+UseGCOverheadLimit 
-XX:+ParallelRefProcEnabled 
-XX:+Inline 
-Xshare:off 
-Xverify:none 
-XX:-UseCounterDecay 
-XX:+UseCompressedClassPointers  
-XX:-TieredCompilation 
-Djava.security.egd=file:/dev/./urandom


-Dcom.sun.management.jmxremote 
-Dcom.sun.management.jmxremote.port=9999 
-Dcom.sun.management.jmxremote.ssl=false 
-Dcom.sun.management.jmxremote.authenticate=false 
-Djava.rmi.server.hostname=172.16.1.18 
-XX:+UnlockCommercialFeatures 
-XX:+FlightRecorder 
-XX:FlightRecorderOptions=loglevel=info 


-Xloggc:/home/dev/logs/tomcat8/tomcat8_gc.log 
-XX:ErrorFile=/home/dev/logs/tomcat8/tomcat8_gc_error_crash_%p.log 
-XX:HeapDumpPath=/home/dev/logs/tomcat8 
-XX:+HeapDumpOnOutOfMemoryError 
-XX:NumberOfGCLogFiles=10  
-XX:GCLogFileSize=2g 
-XX:+UseGCLogFileRotation 


-XX:+PrintVMOptions 
-XX:+PrintHeapAtGC 
-XX:+PrintGCDetails 
-XX:+PrintGCDateStamps 
-XX:+PrintGCTimeStamps 
-XX:+PrintTenuringDistribution 
-XX:+PrintAdaptiveSizePolicy 
-XX:+PrintGCApplicationStoppedTime 
-XX:+PrintGCApplicationConcurrentTime 
-XX:+PrintConcurrentLocks 
-XX:+TraceClassUnloading 
Java 领域中 Tomcat 的性能优化的垃圾回收策略 Tomcat作为最流行的Java Web应用服务器之一,其性能直接影响着Web应用的响应速度和吞吐量。在Tomcat性能优化的众多因素中,垃圾回收(GC)策略的选择和调优占据着核心地位。Tomcat特有的内存使用模式和GC行为特征主流GC算法在Tomcat环境下的表现对比针对不同应用场景的GC调优策略实际调优案例和性能测试数据监控工具和调优方法论本文讨论的范围限定在Oracle HotSpot JVM上的Tomcat性能优化,但大部分原则也适用于其他JVM实现。 阅读详情

相关推荐

Tomcat内存溢出问题的解决方案及参数调整

然而,有时候在运行Tomcat时会遇到内存溢出的问题,这可能导致服务器性能下降甚至崩溃。为了解决这个问题,我们可以通过调整Tomcat的参数来优化内存使用。通过调整Tomcat的参数,如增加堆内存大小、调整垃圾回收机制和限制线程池大小,可以优化内存使用。上述示例将线程池的最大线程数设置为200,最小空闲线程数设置为25,最大空闲线程数设置为75。根据服务器的硬件资源和应用程序的需求,可以适当调整这些值。通过这些优化技术,可以减少应用程序对内存的需求,降低内存溢出的风险。

IqFlask的博客 1658

4C8G的JVM调优

JVM调优

qq_41789192的博客 2488

生信分析实战指南:Linux环境下EMBOSS的安装与核心功能详解

本文详细介绍了在Linux环境下安装和使用EMBOSS工具包的实战指南,涵盖源码编译、包管理器安装和Conda安装三种方法,并演示了序列比对、序列特征提取和引物设计等核心功能。EMBOSS作为生物信息学领域的开源工具集,适用于序列分析、蛋白质结构预测等多种任务,帮助研究人员高效完成生信分析工作。

weixin_29202213的博客 462

JVM垃圾收集器G1

JVM垃圾收集器G1G1收集器G1的垃圾回收过程G1特点G1垃圾收集分类Young GCMixed GCFull GCG1收集器参数设置G1收集器优化建议G1使用场景每秒几十万并发的系统如何优化JVM如何选择垃圾收集器安全点与安全区域安全点安全区域 G1收集器 G1是面向服务器的垃圾收集器,主要针对配备多核处理以及大容器内存的及其,极高概率满足GC停顿时间要求,还具备高吞吐量特征; G1将Java堆划分为多个大小相等的独立区域Region,JVM最多可以有2048个Region; 一般Region大小等

玄霄 4121

基于555定时器的D类功放设计:从PWM原理到无反馈电路实践

D类功放(数字功放)是一种高效率的音频放大技术,其核心原理是脉冲宽度调制(PWM)。它将输入的模拟音频信号转换为一系列高速开关的脉冲,通过控制功率开关管(如MOSFET)的通断,再经低通滤波器还原放大后的音频。相比传统AB类功放,其转换效率通常超过90%,显著降低了热能损耗。这项技术在追求高能效和小型化的现代音频设备中价值凸显,广泛应用于有源音箱、汽车音响和便携式设备。本文聚焦于一种独特的实现方案:以经典的555定时器芯片为核心,构建一个无整体负反馈的D类功放。通过剖析其PWM调制器、FET电压-电流转换级

weixin_30162121的博客 221

如何使用Calibre PERC抽出 点到点/p2p 电阻

@[TOC](如何使用Calibre PERC抽点到点(p2p)电阻) 一、前言 需要实现的功能是从gds中抽出net的点到点的电阻。如下图这样。 二、准备工作 lvs rule pex rule(必要时可以自己定义RC rule) gds p2p点的坐标 定义prode.defs 因为p2p的点是变化的,所以每次prode定义都要重新出,对应的perc rule也是根据每个p2p点的定义来的,perc rule也是每次都要重新出。如果需要可以写一个脚本自动出这些定义文件。 PROBE_POINTS

kobayashiyou的博客 1万+

使用G1优化大内存机器

普通的4核8G机器算不上什么大内存,假设机器分配给JVM的内存空间是全部内存的2/3左右,新生代大概会被分配1.5G左右的内存,Eden区大致在1G左右,使用ParNew+CMS组合垃圾回收器就好。而一旦升级到16核32G这种大内存机器,分配给堆的内存空间肯定也会水涨船高。这时候想想,升级前可能新生代GC只要关注回收那1G左右的内存空间,而升级后,新生代能够分配到的内存空间大概会有6G左右,Eden区大致在5G左右,相比之下此时新生代GC时要关注回收的内存就大的多了,速度自然也很会减慢,当开发者发现此时的新

硅脂味咖啡的博客 1647

arduino uno spi驱动12864

arduino uno spi驱动12864

yvee的博客 2060

java性能优化笔记 - 01

★为了提高系统的速度,仅增加CPU处理器的数量并不一定能起到有效地作用,需要从 根本上修改程序的串行行为,提高系统内科并行化的模块比重。在此基础上,合理增加并 行处理器的数量,才能从最小的投入得到最大的加速比。 1. 设计模式 使用设计模式可以有效的避免时间和空间上的开销,但不能过渡设计。 ★代理模式 因为静态内部类在调用时才会被加载,故使用代理模式可以延迟加载,提高系统性能。 如H

IT点滴 883

Unity 代码混淆<混淆插件(Obfuscator Pro 3.9.4)>

Unity 代码混淆<混淆插件(Obfuscator Pro 3.9.4)> 插件导入项目 导入后打开OPS/Obfuscator/Obfuscator Pro Settings 打开后可以看到界面如下 可以在上面界面中选择你需要混淆的类,方法,字段,属性,事件,参数。需要混淆的程序集的选择。如果有些程序集混淆后会有问题也可以添加到白名单里不被混淆 根据自己需求取选择 这个界面是是否添加添加随机代码的 如果使用了上面的插件可以使用 插件下载网址:https://download.cs

Xing_Cheng_Yun的博客 5099

sap 新增科目表_SAP系统中四大科目表的总结

操作科目表定义-OB13 2国家科目表定义-OB13 3集团科目表定义-OB13 4合并科目表(ECCS)定义-CX10 4分配操作科目表到公司代码-OB62 5分配国家科目表到公司代码-OB62 6分配集团科目表到操作科目表-OB13 6分配集团科目表到合并科目表-CXNF 7Operation 8定义集团科目表的科目-FSP0 8定义国家科目表的科目-FSP0 8定义操作科目表的科目-FSP0...

weixin_39585463的博客 1721

Java程序配置内存大小,gc参数配置-以tomcat为例

tomcat9开启gc日志,并设置内存大小 一、内存配置 1)堆内内存分配,这块用于存放对象,如果-Xmx偏小将会导致java.lang.OutOfMemory错误 -Xms8g //初始内存,默认是内存的1/64,当堆空余70%,会调整到Xms的大小 -Xmx8g //最大内存,默认是内存的1/4,默认空堆剩余40%时,就会加到最大限制 -Xmn4g //年轻代内存大小。注...

zhibin的程序日记 3948

海上通信技术发展与研究综述

通过对海浪模型、节点运动特性、天线辐射特性等进行特征深度学习,考虑改变有效链路的持续时间、业务类型和容量的区别,以及卫星和节点的仰角等,改变通信策略,设计动态波束成形算法,优化折中浮标天线增益和波束宽度,适应海上环境,尤其是海浪运动时变的特性。目前的海上通信系统,同时包括海上无线通信系统、卫星通信系统、岸基通信系统、船载基站通信系统、空中基站通信系统等不同方法组成的通信系统来满足不同的需求,如海上无线通信系统通信成本低廉、卫星通信系统具有广域的覆盖范围、岸基通信网络可以实现数据高速传输。

weixin_70923796的博客 1000

Java-53 深入浅出 Tomcat 性能优化 JVM内存模型 垃圾回收GC Tomcat配置优化

Java虚拟机(JVM)是Java程序运行的核心,提供跨平台支持。其架构包括类加载器、运行时数据区、执行引擎、JNI接口等。内存模型分为线程私有区(程序计数器、虚拟机栈、本地方法栈)与共享区(堆、方法区、常量池)。JVM通过垃圾回收器(如G1、CMS)自动管理内存,支持多种GC策略(标记清除、复制、分代收集等)。Tomcat作为JVM上的Web容器,通过Connector、线程池等模块处理请求,性能调优涉及JVM参数。

谢谢你的喜欢 我们一起无限进步 1678

28、基准剂量法:原理、应用与计算详解

本文详细介绍了基准剂量法(BMD)的原理、在监管机构中的应用以及具体的计算方法。内容涵盖样本量与BMD的关系、主要监管机构如EPA对BMD的应用、BMD的模型选择与数据拟合过程、拟合优度评估、下置信限(BMDL)计算,以及实验设计对BMD结果的影响。同时,还讨论了剂量指标和响应选择的关键问题,为理解和应用基准剂量法提供了全面的参考。

info6的博客 280

迈瑞BS系列全自动生化分析仪LIS协议接口手册(内含HL7和ASTM)

迈瑞BS系列全自动生化分析仪LIS协议接口手册,内含HL7和ASTM)

JVM虚拟机参数以及Tomcat调优

1. 堆内存参数 在 写参数前,先了解 + 在JVM中表示启用一个功能,— 表示禁用一个功能 ;-XX 对于系统级别的配置,而非 -XX基本对于应用层面上的配置 1.1 GC常用参数 -XX:+PrintGC 虚拟机启动后,GC打印日志 -XX:+UserSerialGC 配置串行回收器 -XX:+PrintGCDetails 显示各区的详细日志信息 -XX: +PrintComman...

pengjwhx的博客 771

ET2012新版免狗免安装绿色软件

ET2012新版免狗免安祖昂绿色软件。,新界面,新视觉,

JVM面试精讲:内存模型、垃圾回收算法、类加载机制与GC调优场景

JVM(Java虚拟机)是Java程序的运行环境,主要组成部分包括类加载器、运行时数据区、执行引擎和本地库接口。运行时数据区包含堆、方法区、栈、本地方法栈和程序计数器。JVM采用分代垃圾回收机制,包括新生代和老年代,使用标记清除、复制、标记整理等算法进行内存管理。垃圾回收器有串行、并行、CMS和G1等类型。JVM调优涉及堆大小、垃圾回收器选择等参数设置,可通过jmap、jstack等工具监控和排查内存泄漏、CPU飙高等问题。双亲委派机制确保类加载的安全性和唯一性。

xwhxy的博客 530

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

廖雪峰Python教程[完整版]

廖雪峰的python教程整理的,已经排好版了,而且还是完整的,适合小白

9 JVM参数调优,垃圾回收机制和算法(重)

目录 Java内存结构(虚拟机存储空间) JVM参数调优 堆的参数配置 IDEA设置虚拟机参数 新生代和老年代优化参数 设置新生代比例参数-XX:SurvivorRatio=2 ​设置新生代与老年代参数 内存溢出解决方法 设置堆内存大小 Tomcat配置 设置栈内存大小 gc 垃圾回收机制和算法分析 Java垃圾回收机制 内存溢出和内存泄露 垃圾回收机制算法 引用计...

无名 305

【JVM】垃圾回收机制算法与垃圾回收器

垃圾回收机制内存溢出与内存泄露手动回收垃圾回收机制算法1.引用计数法(淘汰)2.标记清除算法3.复制算法(新生代的S0和S1)4.标记压缩(标记清除的升级版:老年代)5.分代收集算法(新生代,老年代)6.分区算法(JDK1.7)垃圾回收器串行回收(Serial Collector)并行回收CMS回收(Concurrent Mark Sweep)串行回收器Tomcat参数调优并行回收器Tomcat参...

weixin_37838913的博客 164

docker jvm调优 tomcat_Tomcat性能优化及JVM内存工作原理

Java性能优化原则:代码运算性能、内存回收、应用配置(影响Java程序主要原因是垃圾回收,下面会重点介绍这方面)代码层优化:避免过多循环嵌套、调用和复杂逻辑。Tomcat调优主要内容如下:1、增加最大连接数2、调整工作模式3、启用gzip压缩4、调整JVM内存大小5、作为Web服务器时,与Apache整合或Nginx6、合理选择垃圾回收算法7、尽量使用较新JDK版本生产配置实例:参数说明:org...

weixin_39561577的博客 437

Linux--JVM内存设置

对于jvm的设置我一直知道的很少,有时候遇到outOfMemoryError只会一个简单的设置“-Xms256m -Xmx512m”。 有几个问题一直没搞明白: 1、jvm的内存大小究竟应该设置成多少最合适? 2、jvm的默认大小是多少? 3、jvm参数有哪些?哪些参数都表示什么意思?现在的服务器配置一般都是十几个CPU、十几个内存,如何设置才最合适? 在网上搜索了一下: 对于问题1:jvm堆不是越大越好的,一般最大设置到1G-1.5G就完全足够了,如果总是出现内存溢出,一般是应用有问题了。

GodGreat199383的博客 9142

Tomcat和Jvm调优

Tomcat和Jvm调优Tomcat调优Jvm调优内存调优合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowchart流程图导出与导入导出导入 Tomcat调优 找到...

weixin_40207719的博客 204

tomcat配置jvm以及tomcat的优化

【enableLookups】是否反查域名,以返回远程主机的主机名,取值为:true 或 false,如果设置为 false,则直接返回 IP 地址,为了提高处理能力,应设置为 false。以上是一些常用的配置参数,还有好多其它的参数设置,还可以继续深入的优化,HTTP Connector 与 AJP Connector 的参数属性值,可以参考官方文档的详细说明进行学习。-Xmx:堆内存的最大大小,是分配JVM的最大内存,默认为物理内存的1/4。-Xss:设置每个线程可使用的内存大小,即栈的大小。

我的博客 5243

linux jvm与tomcat 的内存,Linux下jvm与tomcat的安全与优化

上一节我们部署了tomcat服务,大家可以看到这个服务部署起来真的是非常的容易,但前提是你要学好前面的命令基础。今天我打算在上节的基础上给大家加深点儿,给大家讲讲tomcat服务的安全与优化!我们为什么不是把服务搭建好就可以了嘛,怎么还要做安全与优化呢?理论上是把服务部署好就可以了,但是为了我们的服务器运行的更安全更稳定!做安全优化是必须的了!在上节我们知道jdk是个java虚拟机(JVM),既然...

weixin_39996908的博客 200

linux 查看tomcat jvm内存大小_详解linux下jvm优化、tomcat调优

系统环境:jdk1.8,apache-tomcat-8.5.35jvm优化进入 bin/catalina.sh,修改JAVA_OPTS配置:JAVA_OPTS="-server -Xms8192M -Xmx8192M -XX:NewRatio=4 -XX:SurvivorRatio=8 -XX:+UseConcMarkSweepGC -XX:ParallelGCThreads=8 -XX:+Hea...

weixin_34107049的博客 3151
上一篇: debian7.4安装ia32-libs-i386失败,debian eclipse android开发环境 adb Canot run program的解决办法
下一篇: JVM监控分析方法总结,JVM监控分析工具推荐,JVM监控命令,JVM监控工具大全
西兹兹
博客等级 码龄22年 21粉丝 34原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值