当前位置:网站首页>一次由groovy引起的fullGC问题排查
一次由groovy引起的fullGC问题排查
2022-08-10 20:01:00 【InfoQ】
- 2.1 参数配置
- 2.2 定位过程
- 2.3 JVM分析
- 2.4 问题分析
一、问题背景
二、分析过程
2.1 参数配置
-Xms3g -Xmx3g -Xmn1g -XX:MetaspaceSize=128m -XX:ParallelGCThreads=5 -XX:+UseConcMarkSweepGC -XX:+UseParNewGC -XX:+UseCMSCompactAtFullCollection -XX:CMSInitiatingOccupancyFraction=80 -XX:+PrintGCDetails -XX:+PrintGCDateStamps -XX:+HeapDumpOnOutOfMemoryError
2.2 定位问题
任务1: 更新客户信息
CustomerScheduleJobService.updateCustomerDataDaily 0 0/30 8,9,10,11,12 * * ?
任务2: 创建客户任务
CustomerStaffScheduleJobService.jobCreateTask 0 10,40 7,8,9,10,11 * * ?
[03-09 08:00:00 062 INFO ] [] [] [] [customerDataStat-pool-0] bll.customer.CustomerUpdateInfoDailyBll - (123) logid=6907112718471909376 [BizCustomerBll.updateCustomerDataDaily] thread begin...Ip: 10.151.49.157
[03-09 08:01:25 476 INFO ] [] [] [] [customerDataStat-pool-0] bll.customer.CustomerUpdateInfoDailyBll - (125) logid=6907112718471909376 [BizCustomerBll.updateCustomerDataDaily] end total=0Ip: 10.151.49.157
[03-09 08:45:08 458 INFO ] [] [] [] [pool-4-thread-20] bll.task.CreateCustomerTaskBll - (109) logid=6907115234995589120 method=jobCreateTask msg=end queryRuleNum=7 queryCustomerNum=15962 createTaskCustomerNum=238 createTaskCount=271Ip: 10.151.49.157
2.3 JVM分析
2.3.1 单天监控图


2.3.2 报警时间段监控图


2.3.3 图表分析


2.4 参数配置
java version "1.8.0_191"
<dependency>
<groupId>org.codehaus.groovy</groupId>
<artifactId>groovy-all</artifactId>
<version>2.4.15</version>
</dependency>
public class GroovyShellUtils {
private static LoggerHelper logger = LoggerHelper.getLoggerHelper(GroovyShellUtils.class);
public static boolean explain(String scriptText) {
try {
GroovyShell groovyShell = new GroovyShell();
Object evaluate = groovyShell.evaluate(scriptText);
return (boolean) evaluate;
} catch (Exception e) {
logger.error("", e);
}
return false;
}
}
// 使用:
for (String rule : rules) {
boolean res = GroovyShellUtils.explain(rule);
}
protected synchronized String generateScriptName() {
return "Script" + (++counter) + ".groovy";
}
三、解决方案
边栏推荐
- Echart饼状图标注遮盖解决方案汇总
- Demis Hassabis:AI 的强大,超乎我们的想象
- YOLOv3 SPP source analysis
- 【SemiDrive源码分析】【MailBox核间通信】51 - DCF_IPCC_Property实现原理分析 及 代码实战
- 这7个自动化办公模版 教你玩转表格数据自动化
- Apache DolphinScheduler 3.0.0 正式版发布!
- uni-app 数据上拉加载更多功能
- whois信息收集&企业备案信息
- Modern Privacy-Preserving Record Linkage Techniques: An Overview论文总结
- Optimizing Bloom Filter: Challenges, Solutions, and Comparisons论文总结
猜你喜欢
深度学习实战教程(一):感知器
whois信息收集&企业备案信息
端口探测详解
Tf ferritin particles contain cisplatin / oxaliplatin / doxorubicin / methotrexate MTX / paclitaxel PTX and other drugs
30分钟使用百度EasyDL实现健康码/行程码智能识别
idea插件 协议 。。 公司申请软件用
苹果字体查找
(10) Sequence and deserialization of image data
【无标题】基于Huffman和LZ77的GZIP压缩
2019河北省大学生程序设计竞赛部分题题解
随机推荐
每日一R「03」Borrow 语义与引用
从 Delta 2.0 开始聊聊我们需要怎样的数据湖
@Autowired注解 --required a single bean, but 2 were found出现的原因以及解决方法
Linux服务器安装Redis,详细步骤。
Rider调试ASP.NET Core时报thread not gc-safe的解决方法
爬虫基本原理介绍、实现以及问题解决
3D Game Modeling Learning Route
Optimizing Bloom Filter: Challenges, Solutions, and Comparisons论文总结
FEMRL: A Framework for Large-Scale Privacy-Preserving Linkage of Patients’ Electronic Health Rec Paper Summary
servlet映射路径匹配解析
spark学习笔记(九)——sparkSQL核心编程-DataFrame/DataSet/DF、DS、RDD三者之间的转换关系
网站架构探测&chrome插件用于信息收集
铁蛋白颗粒负载雷替曲塞/培美曲塞/磺胺地索辛/金刚烷(科研试剂)
不止跑路,拯救误操作rm -rf /*的小伙儿
C语言写数据库
nfs挂载服务器,解决挂载后无法更改用户id,无法修改、写文件,文件只读权限Read-only file system等问题
机器学习模型验证:被低估的重要一环
leetcode 547.省份数量 并查集
Echart饼状图标注遮盖解决方案汇总
Transferrin-modified osthole long-circulating liposomes/PEG-PLGA nanoparticles loaded with notoginsenoside R1 ([email prot