日常
萝卜头柯克船长
害~
展开
-
线上MySQL死锁分析——索引设置不当导致的死锁
文章目录1. 背景2. MySQL InnoDB的锁机制2.1 MySQL中的锁类型2.2 行锁的加锁规则2.3 死锁检测机制3. 本文案例分析3.1 分析InnoDB status日志3.2 Explain 死锁SQL、查看表的索引信息3.3 查看业务代码3.4 实验验证猜想3.5 问题解决4. 如何预防死锁参考1. 背景9月4号负责的系统接入了在线诊断分析平台,其中的运行时Java异常追踪工具能够捕获并上报线上异常。接入后发现系统会频繁的产生org.springframework.dao.Deadl原创 2020-11-27 17:25:47 · 2561 阅读 · 2 评论 -
堆内存OOM分析
1. 背景7月6号系统应用频繁挂掉,UMP显示内存、CPU、GC次数短时间内飙升,日志java. lang. OutOfMemoryError: Java heap space显示JVM发生堆内存的OOM,并成功dump了内存快照。2. OOM的基本分析思路2.1 OOM的易发区域在《Java虚拟机规范里》中除程序计数器外,其它运行时内存区域都有可能发生OOM。具体到HotSopt,栈发生OOM的机率很小(不支持栈的动态扩展,除非在线程申请栈时就内存不足)。常见发生OOM的区域主要有两种:Jav原创 2020-10-28 21:39:56 · 1159 阅读 · 0 评论 -
ES文档字段删除与索引重建
背景FastJSON序列化文档删除字段elasticsearch删除字段mapping 不能删除字段,只能通过重建。文档删除字段,通过脚本更新,利用ctx._source.remove(‘fieldName’)删除。POST waybill_exception_report/_doc/_update_by_query{ "script": "ctx._source.remove('targetOperationLocation')", "query": { "bool原创 2020-09-28 19:47:48 · 6220 阅读 · 1 评论