关于JVM调优

那么面试时,如何回答JVM调优?
1、主要需要你能回答两方面的问题:如何观察JVM的运行参数。比如你发现Java程序跑得慢,定期卡顿,OOM挂掉。为了找原因,你必须学会怎么去看JVM到底怎么运行的。这时需要你了解一些JVM自带的工具命令,比如jps、jstack、jhat,还有比较新的Java自带的JMC图形界面工具。通过他们你可以了解到一个Java进程有多少线程,每个线程什么状态,是不是在等着锁:进程的CPU和内存占用了多少;GC状态怎么样,Full GC频繁不频繁等等;内存中是不是有泄露,哪个地方可能泄漏了等等。
2、如何给出方案。你要明白JVM的工作原理,根据运行参数解决你的问题。比如你发现程序启动慢,你可能猜测有可能是代码没写好,就是跑得慢;也许是一开始load资源过大,而heap不大,造成反复Full GC。你必须通过运行参数来印证你的猜想,然后有针对的去解决那些问题。为此,你需要大致明白多线程的工作原理,Java内存管理,GC的工作原理(串行、CMS和G1)等。

 

推荐书籍《深入理解Java虚拟机》

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值