1、jstack
jstack主要用来查看某个Java进程内的线程堆栈信息
1.1 打印线程信息
https://www.cnblogs.com/hopeway-shaon/p/17676986.html
1.2 获取进行运行的情况
jstack -l PID
2、jmap
jmap用来查看堆内存使用状况,一般结合jhat使用。
2.1 jmap -heap pid查看进程堆内存使用情况
包括使用的GC算法、堆配置参数和各代中堆内存使用情况。如下图:
2.2 dump出堆信息
jmap -dump:live,format=b,file=./dump/dumpName.hprof 18376
可以使用MAT等软件进行分析
内存分析工具 MAT 的使用
https://blog.csdn.net/aaa2832/article/details/19419679
https://www.jianshu.com/p/c6e2abb9f657
https://www.javatang.com/archives/2017/11/08/11582145.html
https://www.javatang.com/archives/2017/10/25/36441958.html
3、jstat
堆内存以及GC使用明细 2000毫秒执行一次 共计5次
jstat -gc pid 2000 5
堆内存使用百分比
jstat -gcutil pid
4、
5、lscpu
https://blog.csdn.net/guihunkun/article/details/120179625
CPU(s): 96 #逻辑cpu个数 96 = 4122
On-line CPU(s) list: 0-95
Thread(s) per core: 2 #每个核心线程数
Core(s) per socket: 12 #每个物理CPU的核数
Socket(s): 4 #物理CPU个数