您的位置:首页

server问题排查经常使用命令

2017-06-02 14:57 295 查看
1、top

查看系统负载情况,load average

CPU使用情况,按1查看每一个CPU的使用情况

shift+h 查看每一个线程的情况

2、free -m

按兆为单位输出内存的已用,未用。总共等结果

total used free shared buffers cached

Mem: 32176 27911 4265 0 132 7114

-/+ buffers/cache: 20664 11512

Swap: 31996 0 31996

3、查看server磁盘使用情况

df -h

文件系统 容量 已用 可用 已用% 挂载点

/dev/sda3 510G 317G 168G 66% /

/dev/sda1 996M 40M 905M 5% /boot

tmpfs 16G 0 16G 0% /dev/shm

查看详细是哪个文件夹磁盘使用过大

du -h --max-depth=1 /etc/

4、查看java进程

ps -ef | grep java

5、查看占用CPU最大的线程

ps Hh -eo pid,tid,pcpu |sort -nk3|tail

2858 2889 1.0

2858 3982 1.8

6796 7480 2.2

查看相应线程的堆栈

jstack 6796 | grep -C 10 'nid=0x1d38'

注意 7480 ---> 十六进制 1D38 ---> 小写

6、查看内存对象

jmap -histo:live pid |head -n 20

最好不要加live,会导致FGC

7、查看gc情况:

jstat -gcutil <pid> <频率> 次数

-rbash-3.2$ jstat -gcutil 6796 1000 3

S0 S1 E O P YGC YGCT FGC FGCT GCT

0.00 26.80 19.02 76.18 21.64 1607 90.868 4 15.923 106.791

0.00 26.80 23.08 76.18 21.64 1607 90.868 4 15.923 106.791

0.00 26.80 26.21 76.18 21.64 1607 90.868 4 15.923 106.791

8、生成内存堆栈文件

jmap -dump:format=b,file=/soft/dump/mem_dump.bin pid

tar -czf mem_dump.tar.gz mem_dump.bin

可通过Eclipse的MemoryAnalyzer工具分析

JVM相关: http://www.cnblogs.com/redcreen/tag/jvm/
内存分析工具 http://www.eclipse.org/mat/
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: