整个建模过程,个人总结来说应该分为3个阶段 前期准备工作,了解问题领域的现状,做好目标分析 做好模块的划分以及具体模块的设计 对整个项目进行总结反思,包括目标的达成情况、设计的实现情况,设计是否存在不合理 前期准备工作 了解问题领域 了解业务概况 在这一步,我们需要了解现在业务的“概况”,强调一定是概况,现在还没到具体详细分析业务的时候。了解业务概…
线上排查:新生代老年代比例错误问题 起因 线上一个应用频繁full gc,排查发现单pod总内存3g的情况下新生代只有200mb,很奇怪,于是到容器里查看jvm参数。 jamp -heap 1,打印 Heap Configuration: MinHeapFreeRatio = 40 MaxHeapFreeRatio = 70 MaxHeapSize…
线上排查:内存异常使用导致full gc频繁
工作记录:一次线上服务宕机问题排查
工作记录:记一次线上ZK掉线问题排查
工作记录:记一次线上内存泄露问题的排查
线上排查:内存异常使用导致full gc频繁 问题系统 日常巡检发现,应用线上出现频繁full gc 现象 应用线上出现频繁full gc 排查过程 分析dump 拉dump文件:小插曲:dump时如果指定:live,则在dump前jvm会先进行一次full gc,并且gc log里会打印dump full gc,这种对非内存泄漏导致的线上异常内存…
问题的发现 早上上班,运维告警,说账户模块的服务全部CPU以及内存告警,当时正在地铁早高峰,所以他们留下了一台在dump,其他机器立马重启,重启后恢复,上班后立马开始排查。 一开始dump文件没出来,后续运维告知dump也失败了,其实按照结果来看,这个问题要是有dump的话, 当时一眼就能看出来问题,可惜没dump走了不少弯路。 问题的分析 从日志…
问题的发现 最早问题的发现在于用户提的,用户提出他支付时支付失败,过了一会儿再试就好了,于是翻日志,查询到当时duboo调用出现了下类错误: [TraceID:20200527145701489] DEBUG c.y.c.s.w.s.m.m.a.HandlerMethodAspect - Throw: {} com.alibaba.dubbo.rp…
问题的发现 发现当然还是运维大哥因为发现告警,包括自己邮箱也一堆告警,然后运维大哥做了dump以及jstack后立马重启,重启后暂时解决。 问题的排查 有dump和jstack记录,当然是好分析的,先分析这两个,原因就比较明显了: 1. dump记录拉到本地用java自带的工具查看,发现大量netty的MpscArrayQueue对象没有释放,占用…