case 1 场景
4CPU 2.6.18
-Xmx1536m -Xms1536m -Xmn500m
目标
减少GC次数,以避免由于GC造成难以支撑高并发量
方法:
降低响应时间或请求次数,这个需要重构,比较麻烦
减少旧生代内存的消耗,比较靠谱
减少每次请求的内存消耗,貌似比较靠谱
降低GC造成的应用暂停时间
jmap dump;发现里面的线程大部分在waiting状态,没在处理任务!
于是根据MAT查到底谁在消耗内存,发现是由于某地方使用了ThreadLocal,但在使用完毕后没
ThreadLocal.set(null), 做完tuning后,旧生代内存下降了大概200M,于是FULL GC频率缩短一半,但仍然不理想
想减少每次请求所分配的内存,碰到问题,如何知道???尝试只做一次请求,在run之前之后,进而对比,但实际上dump的时候会force gc,找不到最终的引用关系。。。只好review all code, e.g, substring会产生新对象,新方法是遍历char array来避免产生新对象
降低GC所造成的长暂停: 采用CMS GC, QPS只提升到50.。。于是放弃,而且还有和jmap -heap的冲突
前端和QPS定量,后端用TPS定量
终极必杀技:降低系统响应时间,QPS终于能支撑到90, 把响应时间从100ms低到40ms左右
预估系统QPS峰值,提前报警,避免系统crash
认真分析GC LOG
case 2
目标
降低FULL GC频率,以及GC所造成的应用暂停
如果还能降低MINOR GC频率与时间更好
方法:
降低响应时间或请求次数,比较麻烦,涉及太多的业务应用
减少每次请求所需分配内存,貌似比较麻烦
减少每次MINOR GC晋升到OLD的对象,比较靠谱
->调大new,在当前参数下不好操作(1536, xmn700)
->调大Survivor,根据目前状况,可选
->调大TenuringThreshold,根据目前状况,不是key point
经过多次调整得到最优值,达到了降低full gc目标,但整体GC所造成的响应时间下降只有10%。 于是保持
Survivor space,同时改成CMS GC
-Xms1536m -Xmx1536m -Xmn700m -XX:SurvivorRatio=7 -XX:+UseConcMarkSweepGC
-XX:+UseCMSCompactAtFullCollection -XX:CMSMaxAbortablePrecleanTime=1000
-XX:+CMSClassUnloadingEnabled -XX:+UseCMSInitiatingOccupancyOnly -
XX:+DisableExplicitGC
关注JVM最新BUG
分享到:
相关推荐
java jvm GC和GC Tuning详解
GC__and Tuning.md
随着人工智能领域的飞速发展,提示学习Prompt Tuning作为一项革命性的技术,已经开始在自然语言处理(NLP)和计算机视觉(CV)领域引发广泛关注。借助于强大的语言模型,Prompt Tuning能通过简单地修改输入提示而非...
### Camera Tuning 基础知识详解 #### 一、前言 随着智能手机技术的不断发展,摄像头已成为衡量手机性能的重要指标之一。为了提供更优质的拍摄体验,摄像头传感器(Camera Sensor)的效果调整至关重要。这一过程...
Oracle Database 11g SQL Tuning Workshop 是一个深入学习如何优化SQL查询的专题课程,针对的是数据库管理员(DBA)和开发人员。在这个工作坊中,参与者将掌握一系列技术,以提升Oracle数据库的性能,减少资源消耗,...
### SQL Tuning Advisor 使用总结 #### 一、SQL Tuning Advisor 概述 SQL Tuning Advisor(STA)是Oracle数据库中的一个强大工具,用于优化SQL语句的性能。通过自动化的诊断过程,STA能够帮助数据库管理员(DBA)...
由五名研究人员和工程师组成的团队发布了《Deep Learning Tuning Playbook》,来自他们自己训练神经网络的实验结果以及工程师的一些实践建议,目前在Github上已有1.5k星。此版本为中文翻译版,提供给大家免费下载,...
在这个场景下,我们关注的是基于MTK6739平台的GC2385摄像头的调试过程。MTK6739是一款由联发科(Mediatek)设计的四核处理器,常用于入门级智能手机和平板电脑,而GC2385是常见的CMOS图像传感器,广泛应用于手机、...
总的来说,《SQL Tuning》英文版是一本全面且深入的SQL性能优化指南,适合数据库管理员、开发人员以及对数据库性能优化感兴趣的读者学习。通过深入学习和实践书中的知识,读者将能够有效提升SQL查询效率,保障数据库...
根据提供的文件信息,我们可以推断出...通过对 Db10g SQL Tuning 的深入学习,不仅可以帮助我们更好地理解 SQL 语句的执行机制,还能掌握一系列实用的调优技巧,从而有效提升数据库性能。希望以上内容对大家有所帮助。
《MTK平台音频调校工具Audio_Tuning_Tool_exe_v2.2016详解》 在移动设备领域,音质的优化与调校是提升用户体验的关键环节之一。针对MTK(MediaTek)平台,开发者们推出了Audio_Tuning_Tool_exe_v2.2016这一专业工具...
### JVM Tuning 知识点详解 #### 一、Java内存管理 在Java虚拟机(JVM)中,内存管理是一项核心任务,它直接关系到应用的性能和稳定性。Java内存模型主要包括以下几个部分: 1. **堆内存 (Heap)**: 堆内存用于存储...
作者使用了 generative pre-training 语言模型,在四个自然语言任务中应用了奖励学习,这四个任务分别是:继续文本、摘要生成、TL;DR 和 CNN/Daily Mail 数据集。实验结果表明,使用仅 5,000 个人工比较结果,模型...
### SQL Tuning 使用指南知识点详解 #### 一、SQL Tuning 概述 **SQL Tuning** 是一种专为 **Oracle 数据库** 设计的强大工具,用于分析、测试和优化 SQL 语句,旨在提高应用系统的整体性能。该工具覆盖了数据库...
Java虚拟机(JVM)是Java...阅读“java hotspot vm options.pdf”、“java se 6 hotspot[tm] virtual machine garbage collection tuning.pdf”和“java工具选项文档.pdf”等资料,将有助于深入学习和实践这些知识。
在Oracle数据库管理中,SQL调优是提升系统性能的关键环节。SQL_Tuning是Oracle官方提供的一个专题,旨在帮助管理员和开发人员优化SQL查询,从而提高数据库的...Oracle SQL优化是一个持续的过程,需要不断学习和调整。
通过学习"D79995GC10_sg1.pdf"、"D79995GC10_sg2.pdf"和"D79995GC10_ag.pdf"中的Student Guide和Activity Guide,你可以深入了解这些概念,并获得实践经验,从而提升你的Oracle 12C SQL调优能力。这些资源将详细介绍...
以上内容只是《SQL Tuning in sqlServer 数据库》教程的部分要点,通过深入学习,你可以掌握一系列SQL Server性能优化的技巧和最佳实践,从而更好地管理和优化你的数据库系统。CHM格式的文档通常包含丰富的超链接和...
Linux Performance and Tuning Guidelines 4285 PDF Linux® is an open source operating system developed by people from all over the world. The source code is freely available and can be used under the ...
Tuning Red Hat Enterprise Linux linux服务器调优