转:https://my.oschina.net/feichexia/blog/196575?p=3 现实企业级Java开发中,有时候我们会碰到下面这些问题: OutOfMemoryError,内存不足 内存泄露 线程死锁 锁争用(Lock Contention) Java进程消耗CPU过高 ... ...
分类:
Web程序 时间:
2018-06-15 16:16:32
阅读次数:
269
一、发现问题 以面是线上机器的cpu使用率,可以看到从4月8日开始,随着时间cpu使用率在逐步增高,最终使用率达到100%导致线上服务不可用,后面重启了机器后恢复。 二、排查思路 简单分析下可能出问题的地方,分为5个方向: 1.系统本身代码问题 2.内部下游系统的问题导致的雪崩效应 3.上游系统调用 ...
分类:
Web程序 时间:
2018-05-30 11:02:17
阅读次数:
286
一、进程内存统计cat/proc/[pid]/status通过/proc/[pid]/status可以查看进程的内存使用情况,包括虚拟内存大小(VmSize),物理内存大小(VmRSS),数据段大小(VmData),栈的大小(VmStk),代码段的大小(VmExe),共享库的代码段大小(VmLib)等等。Name:java/进程的程序名/State:S(sleeping)/进程的状态信息,具体参见
分类:
系统相关 时间:
2018-05-23 11:03:08
阅读次数:
302
jmap jmap命令用于生成heap dump文件,如果不使用这个命令,还可以使用-XX:+HeapDumpOnOutOfMemoryError参数来让虚拟机出现OOM的时候自动生成dump文件。jmap不仅能生成dump文件,还可以查询finalize执行队列、Java堆和永久代的详细信息,如当 ...
分类:
其他好文 时间:
2018-05-18 20:39:35
阅读次数:
191
1、在前面restTemplate的坑过后,问题又来了,因为数据量并发上去,数据库压力很大。cpu相对于之前的压力一直飙升不下。 在Linux服务器中定位问题 ps -ef | grep 服务名 查看pid 查看整个JVM内存状态 jmap -heap [pid] 要注意的是在使用CMS GC 情况 ...
分类:
编程语言 时间:
2018-05-18 01:25:06
阅读次数:
314
获取方式: 1. jdk 自带启动参数 -XX:+HeapDumpBeforeFullGC -XX:HeapDumpPath=/x/x 产生dump日志,然后用visualVm分析 2. jmap 命令(结合jps) jps -l 获取对应java 进程pid jmap -heap pid 查看 整 ...
分类:
其他好文 时间:
2018-05-15 21:13:16
阅读次数:
394
JVM调优命令-jmap jmap JVM Memory Map命令用于生成heap dump文件,如果不使用这个命令,还可以使用-XX:+HeapDumpOnOutOfMemoryError参数来让虚拟机出现OOM的时候自动生成dump文件。 jmap不仅能生成dump文件,还可以查询finali ...
分类:
其他好文 时间:
2018-05-13 13:50:07
阅读次数:
317
jstack -- 如果java程序崩溃生成core文件,jstack工具可以用来获得core文件的java stack和native stack的信息,从而可以轻松地知道java程序是如何崩溃和在程序何处发生问题。另外,jstack工具还可以附属到正在运行的java程序中,看到 当时运行的java ...
分类:
数据库 时间:
2018-05-09 01:10:38
阅读次数:
219
JVM基础 垃圾回收器 GC日志 jmap, jhat命令 jstat命令 线程dump ...
分类:
编程语言 时间:
2018-05-06 20:10:30
阅读次数:
236