jvm调优工具

本文介绍了常用的JVM调优工具,包括Jconsole、JProfiler和VisualVM,详细讲解了它们的功能和应用场景,如堆信息查看、线程监控、内存泄漏检查等。通过这些工具,开发者可以有效地定位和解决Java应用中的性能问题,例如内存泄漏、线程死锁和系统资源分配不当等。文章还提供了针对各种异常情况的解决策略,帮助优化系统性能。
摘要由CSDN通过智能技术生成

在这里插入图片描述在这里插入图片描述常用的JVM调优工具:Jconsole,jProfile,VisualVMJconsole : jdk自带,功能简单,但是可以在系统有一定负荷的情况下使用。对垃圾回收算法有很详细的跟踪。详细说明参考这里JProfiler:商业软件,需要付费。功能强大。详细说明参考这里VisualVM:JDK自带,功能强大,与JProfiler类似。推荐。 调优的方法观察内存释放情况、集合类检查、对象树上面这些调优工具都提供了强大的功能,但是总的来说一般分为以下几类功能 堆信息查看可查看堆空间大小分配(年轻代、年老代、持久代分配)提供即时的垃圾回收功能垃圾监控(长时间监控回收情况) 查看堆内类、对象信息查看:数量、类型等 对象引用情况查看 有了堆信息查看方面的功能,我们一般可以顺利解决以下问题: --年老代年轻代大小划分是否合理 --内存泄漏 --垃圾回收算法设置是否合理 线程监控线程信息监控:系统线程数量。线程状态监控:各个线程都处在什么样的状态下 Dump线程详细信息:查看线程内部运行情况死锁检查 热点分析 CPU热点:检查系统哪些方法占用的大量CPU时间 内存热点:检查哪些对象在系统中数量最大(一定时间内存活对象和销毁对象一起统计) 这两个东西对于系统优化很有帮助。我们可以根据找到的热点,有针对性的进行系统的瓶颈查找和优化,而不是漫无目的的进行所有代码的优化。快照 快照是系统运行到某一时刻的一个定格。在我们进行调优的时候,不可能用眼睛去跟踪所有系统变化,依赖快照功能,我们就可以进行系统两个不同运行时刻,对象(或类、线程等)的不同,以便快速找到问题 举例说,要检查系统进行垃圾回收以后,是否还有该收回的对象被遗漏的。那么就可以在进行垃圾回收前后,分别进行一次堆情况的快照,然后对比两次快照的对象情况。 内存泄漏检查 内存泄漏是比较常见的问题,而且解决方法也比较通用,这里可以重点说一下,而线程、热点方面的问题则是具体问题具体分析了。 内存泄漏一般可以理解为系统资

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值