1. jmap查询jvm内存使用情况
-heap :打印jvm heap的情况
-histo: 打印jvm heap的直方图。其输出信息包括类名,对象数量,对象占用大小。
-histo:live : 同上,但是只答应存活对象的情况
-permstat: 打印permanent generation heap情况
命令使用:
jmap -heap
查询对象占用情况
jmap -histo 有的时候对象太多,需要输出到文本里筛选:
jmap -histo > a.txt
jmap -histo输出的数据中:
[C is a char[]
[S is a short[]
[I is a int[]
[B is a byte[]
[[I is a int[][]
linux命令 查询最后的几行
tail -n a.txt linux命令 查询前几行
head -n a.txt
2. 查询java的pid
ps -ef | grep java
3. 查询某pid的占用情况
top -p
4. htop各项指标的含义
PID:进行的标识号
USER:运行此进程的用户
PRI:进程的优先级
NI:进程的优先级别值,默认的为0,可以进行调整
VIRT:进程占用的虚拟内存值
RES:进程占用的物理内存值
SHR:进程占用的共享内存值
S:进程的运行状况,R表示正在运行、S表示休眠,等待唤醒、Z表示僵死状态
%CPU:该进程占用的CPU使用率
%MEM:该进程占用的物理内存和总内存的百分比
TIME+:该进程启动后占用的总的CPU时间
COMMAND:进程启动的启动命令名称
5. 查询服务器当前内存使用情况
free -m 参数:
-b 以Byte为单位显示内存使用情况。
-k 以KB为单位显示内存使用情况。
-m 以MB为单位显示内存使用情况。
-o 不显示缓冲区调节列。
-s<间隔秒数> 持续观察内存使用状况。
-t 显示内存总和列。
-V 显示版本信息。
6. 根据进程号pid查询执行文件目录
lsof -p PID
7. 查询某个端口的进程pid
lsof -i: 端口号
8. 查询某个服务的进程pid
jps -lv | grep "service name"
8. 查询某个服务使用的编码格式
jinfo 1732 | grep "file.encoding"
1732是进程的pid
9. 遍历目录所有文件,展示大小
ll -h
10. 解压*.gz文件
gunzip file.gz
11. 查询某pid的线程数
ps -Lf Pid | wc -l