beetle 定时任务 GC 频繁
主要是 macan 和 blazer 调用比较多,白天比较频繁
fullGC 时间点和堆内存详情
样本放大 (近三天)
从gc时间点和堆内存看出
时间点 | fullGC | 堆内存详情 |
---|---|---|
1.21 11:00 | 1 | |
1.21 17:00 | 1 | |
1.22 14:00 | 1 | 8:00-> 14:00 逐渐增高 14:00->17:00 调用量到达顶峰 |
1.22 20:00 | 1 |
blazer 和 macan 白天的大量调用 导致了 fullgc 需要查看具体占用内存的方法
查看 rss 告警 pod
http://prometheus.f6yc.com/graph?g0.range_input=1w&g0.expr=sum%20by(pod%2C%20container)%20(container_memory_rss%7Bimage!%3D%22%22%2Cpod%3D%22beetle-prod-arms-deploy-bbd6cc9f6-z7ghf%22%7D)%20%2F%20sum%20by(pod%2C%20container)%20(container_spec_memory_limit_bytes%7Bimage!%3D%22%22%2Cnamespace%3D~%22prod%22%7D)%20*%20100%20&g0.tab=0%20(container_memory_rss%7Bimage!%3D%22%22%2Cpod%3D%22beetle-prod-arms-deploy-bbd6cc9f6-z7ghf%22%7D)%20%2F%20sum%20by(pod%2C%20container)%20(container_spec_memory_limit_bytes%7Bimage!%3D%22%22%2Cnamespace%3D~%22prod%22%7D)%20*%20100%20&g0.tab=0)
找两个节点观察一下
12点25分之后的日志 有大量计算下次服务日日志
8点20分之后的日志 有大量修改下次服务日日志
9点19分结束前还有服务提醒JOB 调用
从 jvm 内存来看, 9点job导致了老年代内存的大量增长,导致内存使用是一只偏高的
查询下次服务日 大量的 YongGC
导购适配查询接口, 也有多次的 YoungGC ,但是频次和调用次数均少于查询下次服务日查询接口
综合整体服务一直爬坡的上升趋势判断 应该是工单调用查询下次服务日接口导致的
查询下次服务日代码梳理
9点定时提醒任务代码梳理
remindRuleEngineerReadFacade.queryBaseRemindRulePageInfo
- 规则对象字段全量返回了,
- 并且查询的bo转换了 response 对象
y t
�carAnnualCheckRemindBillEngineerReadFacade.pagingCarAnnualCheckRemindBill
- 查询提醒单对象全量返回了,
- 并且查询的bo转换了 response对象
- 一页 1000 条
remindBillWriteService.batchUpdate 暂时不改动
�
5点提醒单同步业务表
- 每页查询 1000 条
�