勇往直前的专栏

写给以后的自己

凌晨1点突发致命生产事故!看的我惊心动魄…

文章转载自公众号纯洁的微笑,作者 微笑很纯洁 “有一个读者问我:你认为一个程序员具备什么样的能力,才算得上是厉害的程序员?我答:拥有解决问题的能力的程序员。这个回答貌似有点抽象,不要紧看下面的文章你会慢慢有所了解。 图片来自 Pexels解决问题的能力 很多年前,当我还是一个小菜鸟的时候,我...

2019-08-05 09:23:01

阅读数 31

评论数 1

一次服务器CPU占用率高的定位分析

背景 通过性能监控发现上线服务器cpu某核占用率已经达到了100%,而且是由我们的某个核心服务导致的。幸亏由于我们的服务进程由多个相同worker(线程)调度承担的,所以除了CPU占用率高之外,并没有对服务造成影响。随着上次我们找到那个吃IO的罪犯,这次我们要追捕的是潜伏在团体中的特务,更加惊险...

2019-07-04 09:28:03

阅读数 74

评论数 1

一次 Java 内存泄漏排查过程,学习学习

人人都会犯错,但一些错误是如此的荒谬,我想不通怎么会有人犯这种错误。更没想到的是,这种事竟发生在了我们身上。当然,这种东西只有事后才能发现真相。接下来,我将讲述一系列最近在我们一个应用上犯过的这种错误。最有意思的是,一开始的迹象揭示的问题,与实际发生的问题完全不同。 在一个凄凉的午夜 午夜刚过...

2019-07-03 09:17:01

阅读数 89

评论数 1

又一次生产 CPU 高负载排查实践

本文经授权转载自微信公众号:crossoverJie 前言 前几日早上打开邮箱收到一封监控报警邮件:某某 ip 服务器 CPU 负载较高,请研发尽快排查解决,发送时间正好是凌晨。 其实早在去年我也处理过类似的问题,不过本次问题产生的原因却和上次不太一样,大家可以接着往下看。 问题分析 ...

2019-06-30 15:31:01

阅读数 58

评论数 0

一次心惊肉跳的服务器误删文件的恢复过程

经历了两天不懈努力,终于恢复了一次误操作删除的生产服务器数据。对本次事故过程和解决办法记录在此,警醒自己,也提示别人莫犯此错。也希望遇到问题的朋友能找到一丝灵感解决问题。 事故背景 安排一个妹子在一台生产服务器上安装Oracle,妹子边研究边安装,感觉装的不对,准备卸载重新安装。从网上找到卸...

2019-06-03 19:36:48

阅读数 96

评论数 0

源码实战 | 本地可跑,上线就崩?慌了!

前言 上周一好友向我反馈一个问题,他们项目在本地是可以跑的,但是在线上环境,就报错.报错日志如下: Couldnotfindresultmapcn.mycs.server.persistence.dao.UserMapper.BaseResultMap 说实话,我每天这么忙,看到这种直接...

2019-04-29 14:08:36

阅读数 140

评论数 1

生产环境JVM内存溢出案例分析

如果我们所在公司的业务量比较大,在生产环境经常会出现JVM内存溢出的现象,那我们该如何快速响应,快速定位,快速恢复问题呢? 本文将通过一个线上环境JVM内存溢出的案例向大家介绍一下处理思路与分析方法。 案例:架构组接到某项目组反馈,Zabbix监控上显示JMX不可用,请求协助处理。 分析思路...

2019-04-07 15:52:00

阅读数 44

评论数 0

线上 CPU100% 异常案例:一个正则表达式引发的血案

前几天线上一个项目监控信息突然报告异常,上到机器上后查看相关资源的使用情况,发现 CPU 利用率将近 100%。通过 Java 自带的线程 Dump 工具,我们导出了出问题的堆栈信息。 我们可以看到所有的堆栈都指向了一个名为 validateUrl 的方法,这样的报错信息在堆栈中一共超过 1...

2019-02-24 17:04:06

阅读数 237

评论数 0

一次生产 CPU 100% 排查优化实践

本文转载自微信公众号:crossoverJie 前言 到了年底果然都不太平,最近又收到了运维报警:表示有些服务器负载非常高,让我们定位问题。 还真是想什么来什么,前些天还故意把某些服务器的负载提高(没错,老板让我写个 BUG!),不过还好是不同的环境互相没有影响。   定位问题 拿...

2018-12-25 09:52:37

阅读数 225

评论数 0

强如 Disruptor 也发生内存溢出?

前言 OutOfMemoryError 问题相信很多朋友都遇到过,相对于常见的业务异常(数组越界、空指针等)来说这类问题是很难定位和解决的。 本文以最近碰到的一次线上内存溢出的定位、解决问题的方式展开;希望能对碰到类似问题的同学带来思路和帮助。 主要从表现-->排查--...

2018-12-25 09:42:41

阅读数 178

评论数 0

深入JVM彻底剖析前面ygc越来越慢的case

阿里JVM团队的同学帮助从JVM层面继续深入的剖析了下前面那个ygc越来越慢的case,分析文章相当的赞,思路清晰,工具熟练,JVM代码熟练,请看这位同学(阿里JVM团队:寒泉子)写的文章,我转载到这。   Demo分析 虽然这个demo代码逻辑很简单,但是其实这是一个特殊的demo...

2018-11-23 08:55:04

阅读数 152

评论数 0

上篇文章中ygc越来越慢的case的原因解读

上篇文章中附加了一个最近碰到的奇怪的case,有位同学看到这个后周末时间折腾了下,把原因给分析出来了,分析过程很赞(无论是思路,还是工具的使用),非常感谢这位同学(阿里的一位同事,花名叫彦贝),在征求他的同意后,我把他写的整个问题的分析文章转载到这里。 文里图比较多,手机上不方便看的话,建议大...

2018-11-23 08:52:33

阅读数 132

评论数 0

一个jstack/jmap等不能用的case

今天一个同学问我:"我排查问题时总是遇到,jmap -heap或-histo 不能用,是不是我们机器配置有啥问题哇? " 分享下这个case的解决过程。 登上同学说的那台不能用的机器,执行jstack,报错: “get_thread_regs fail...

2018-11-23 08:51:05

阅读数 384

评论数 0

从一个故障说说Java的三个BlockingQueue

最近出了个故障,排查的时候耗费了很长的时间,回顾整个排查过程,经验主义在这里起了不好的作用,直接导致了整个故障排查的时间非常长,这个故障的根本原因在于BlockingQueue用的有问题,顺带展开说说Java中常用的几个BlockingQueue:ArrayBlockingQueue、Linke...

2018-11-23 08:49:56

阅读数 98

评论数 0

提示
确定要删除当前文章?
取消 删除