摘要: JVM性能调优涉及到方方面面的取舍,往往是牵一发而动全身,需要全盘考虑各方面的影响,那么如何进行一次优雅的调优,提升应用的性能?
这是jvm优化系列第三篇:
jvm优化——垃圾回收
jvm优化——监控工具
JVM性能调优涉及到方方面面的取舍,往往是牵一发而动全身,需要全盘考虑各方面的影响。但也有一些基础的理论和原则,理解这些理论并遵循这些原则会让你的性能调优任务将会更加轻松。为了更好的理解本篇所介绍的内容。你需要已经了解和遵循以下内容:
1、已了解jvm 垃圾收集器
2、已了解jvm 性能监控常用工具
3、能够读懂gc日志
4、确信不为了调优而调优,jvm调优不能解决一切性能问题
这些内容在之前的两篇文章已经介绍过了,如果有不了解的可以去点击上述连接进行回顾,如果对这些不了解不建议读本篇文章。
本篇文章基于jvm性能调优,结合jvm的各项参数对应用程序调优,主要内容有以下几个方面:
1、jvm调优的一般流程
2、jvm调优所要关注的几个性能指标
3、jvm调优需要掌握的一些原则
4、调优策略&示例
一、性能调优的层次
为了提升系统性能,我们需要对系统的各个角度和层次来进行优化,以下是需要优化的几个层次。
从上面我们可以看到,除了jvm调优以外,还有其他几个层面需要来处理,所以针对系统的调优不是只有jvm调优一项,而是需要针对系统来整体调优,才能提升系统的性能。本篇只针对jvm调优来讲解,其他几个方面,后续再介绍。
在进行jvm调优之前,我们假设项目的架构调优和代码调优已经进行过或者是针对当前项目是最优的。这两个是jvm调优的基础,并且架构调优是对系统影响最大的 ,我们不能指望一个系统架构有缺陷或者代码层次优化没有穷尽的应用,通过jvm调优令其达到一个质的飞跃,这是不可能的。