java命令

 

1.         jmap 命令

jmap 命令可以获得运行中的 jvm 的堆的快照,从而可以离线分析堆,以检查内存泄漏,检查一些严重影响性能的大对象的创建,检查系统中什么对象最多,各种对象所占内存的大小等等。

1.1.     jmap -dump:[live,]format=b,file=<filename> pid

live 参数可选,指明是活着的对象

format 文件格式

file 指定堆文件名

1.2.     -finalizerinfo 

打印等待回收对象的信息

1.3.     -heap  打印堆总结

1.4.     -histo[:live]  打印堆的对象统计,包括对象数、内存大小等等

# instance 是对象的实例个数

#bytes 是总占用的字节数

class name 对应的就是 Class 文件里的 class 的标识

B 代表 byte
C
代表 char
D
代表 double
F
代表 float
I
代表 int
J
代表 long
Z
代表 boolean
前边有“ [ ”代表数组,“ [I ” 就相当于“ int[]
对象用“ [L+ ”类名表示

1.5.     -permstat  打印 javaperm 区的 classloader 统计

1.6.     -F  强制,在 jmap -dumpjmap -histo 中使用,如果 pid 没有相应的回复

1.7.     -J  提供 jvm 选项,如: -J-Xms256m

2.         jhat 命令

查看 java 堆文件,先用 jmap 导出堆文件

3.         jstack

观察 jvm 中当前所有线程的运行情况和线程当前状态

查看 cpu 负载过高的方法:首先输入 top 命令,然后输入 shift+h ,观察占用 cpu 高的线程,记录下此 pid ,然后转换成 16 进制,用 jstack pid 导出线程堆栈,然后查找 nid 和先前转换的 16 进制相同的线程。

4.         jconsole

配置参数 :

-Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.port=9004 -Dcom.sun.management.jmxremote.authenticate=false -Dcom.sun.management.jmxremote.ssl=false -Djava.rmi.server.hostname=192.168.1.36

5.         jinfo

观察运行中的 java 程序的运行环境参数:参数包括 Java System 属性和 JVM 命令行参数

6.         jps

列出所有的 jvm 实例

7.         jstatd

启动 jvm 监控服务。它是一个基于 rmi 的应用,向远程机器提供本机 jvm 应用程序的信息。默认端口 1099

实例: jstatd -J-Djava.security.policy=my.policy

my.policy 文件需要自己建立,内如如下

grant codebase "file:$JAVA_HOME/lib/tools.jar" {

 permission java.security.AllPermission;

};

这是安全策略文件,因为 jdkjvm 做了 jaas 的安全检测,所以我们必须设置一些策略,使得 jstatd 被允许作网络操作

8.         jstat

8.1.     -class

统计 class loader 行为信息

jstat -class 23300 1000 10 (每隔 1 秒监控一次,一共做 10 次)

Loaded : Number of classes loaded.

Bytes : Number of Kbytes loaded.

Unloaded : Number of classes unloaded.

Bytes : Number of Kbytes unloaded.

Time : Time spent performing class load and unload operations.

8.2.     -compile

统计编译行为信息

8.3.     -gc

统计 jdk gcheap 信息

jstat -gc 23300 2000 20 (每隔 2 秒监控一次,共做 10

S0CCurrent survivor (存活的) space 0 capacity (KB).

ECCurrent eden space capacity (KB).

EUEden space utilization (KB).

OCCurrent old space capacity (KB).

OUOld space utilization (KB).

PCCurrent permanent space capacity (KB).

PUPermanent space utilization (KB).

YGCNumber of young generation GC Events.

YGCTYoung generation garbage collection time.

FGCNumber of full GC events.

FGCTFull garbage collection time.

GCTTotal garbage collection time.

8.4.     -gccapacity

统计不同的 generations (不知道怎么翻译好,包括新生区,老年区, permanent 区)相应的 heap 容量情况

8.5.     -gccause

统计 gc 的情况,(同 -gcutil )和引起 gc 的事件

jstat -gccause 23300

S0Survivor space 0 utilization as a percentage of the space's current capacity.

S1Survivor space 1 utilization as a percentage of the space's current capacity.

EEden space utilization as a percentage of the space's current capacity.

O Old space utilization as a percentage of the space's current capacity.

PPermanent space utilization as a percentage of the space's current capacity.

YGCNumber of young generation GC events.

YGCT Young generation garbage collection time.

FGCNumber of full GC events.

FGCT Full garbage collection time.

GCTTotal garbage collection time.

LGCC Cause of last Garbage Collection.

GCCCause of current Garbage Collection.

8.6.     -gcnew

统计 gc 时,新生代的情况

8.7.     -gcnewcapacity

统计 gc 时,新生代 heap 容量

8.8.     -gcold

统计 gc 时,老年区的情况

8.9.     -gcoldcapacity

统计 gc 时,老年区 heap 容量

8.10.          -gcpermcapacity

统计 gc 时, permanentheap 容量

8.11.          -gcutil

统计 gc 时, heap 情况

8.12.          -printcompilation

不知道干什么的,一直没用过。

本项目是一个基于SSM(Spring+SpringMVC+MyBatis)框架和Vue.js前端技术的大学生第二课堂系统,旨在为大学生提供一个便捷、高效的学习和实践平台。项目包含了完整的数据库设计、后端Java代码实现以及前端Vue.js页面展示,适合计算机相关专业的毕设学生和需要进行项目实战练习的Java学习者。 在功能方面,系统主要实现了以下几个模块:用户管理、课程管理、活动管理、成绩管理和通知公告。用户管理模块支持学生和教师的注册、登录及权限管理;课程管理模块允许教师上传课程资料、设置课程时间,并由学生进行选课;活动管理模块提供了活动发布、报名和签到功能,鼓励学生参与课外实践活动;成绩管理模块则用于记录和查询学生的课程成绩和活动参与情况;通知公告模块则实时发布学校或班级的最新通知和公告。 技术实现上,后端采用SSM框架进行开发,Spring负责业务逻辑层,SpringMVC处理Web请求,MyBatis进行数据库操作,确保了系统的稳定性和扩展性。前端则使用Vue.js框架,结合Axios进行数据请求,实现了前后端分离,提升了用户体验和开发效率。 该项目不仅提供了完整的源代码和相关文档,还包括了详细的数据库设计文档和项目部署指南,为学习和实践提供了便利。对于基础较好的学习者,可以根据自己的需求在此基础上进行功能扩展和优化,进一步提升自己的技术水平和项目实战能力。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值