命令
jinfo:查看JVM参数
jps:查看java进程及相关信息
jstat:查看JVM运行时的状态信息,包括内存状态、垃圾回收
jstack:查看JVM线程快照,jstack命令可以定位线程出现长时间卡顿的原因,例如死锁,死循环
jmap:可以用来查看内存信息
uptime(过去1,5,15分钟cpu平均负载)
简单理解为,平均负载其实就是平均活跃进程数(包括等待cpu的进程)
比如当平均负载为 2 时,意味着什么呢?
在只有 2 个 CPU 的系统上,意味着所有的 CPU 都刚好被完全占用。
在 4 个 CPU 的系统上,意味着 CPU 有 50% 的空闲。
而在只有 1 个 CPU 的系统中,则意味着有一半的进程竞争不到 CPU
一般当平均负载高于 CPU 数量 70% 的时候,你就应该分析排查负载高的问题了
平均负载与 CPU 使用率
CPU 密集型进程,使用大量 CPU 会导致平均负载升高,此时这两者是一致的;
I/O 密集型进程,等待 I/O 也会导致平均负载升高,但 CPU 使用率不一定很高;
vmstat命令
展现给定时间间隔的服务器的状态值,包括服务器的CPU使用率,内存使用,虚拟内存交换情况,IO读写情况

si #每秒从磁盘读入虚拟内存的大小,如果这个值大于0,表示物理内存不够用或者内存泄露了,要查找耗内存进程解决

本文详细介绍了Linux系统中用于监控JVM和服务器性能的命令,如jinfo、jps、jstat、jstack、jmap,以及如何通过uptime、vmstat、free和top命令了解CPU负载、内存和进程状态。通过对这些工具的运用,可以有效地诊断和解决系统性能问题。
最低0.47元/天 解锁文章
2281

被折叠的 条评论
为什么被折叠?



