jvm调优主要指gc调优
gc是指垃圾自动回收器。
gc调优主要是为了优化“堆”中的内存。(标准的虚拟机一般有堆,栈,方法区)
垃圾回收算法大部分使用:分代收集
堆中的内存可以分为“新生代”,“老年代”,“持久代”,注意“持久代”相当于方法区,用于存储一些几乎不变动的内容,这里不讨论“持久代”
新生代可以分为三个区eden,s0,s1,老年代没有分区。
刚创建的对象就在新生代的eden,这是gc频繁光顾的区域,随着新生代eden爆满或到达时间,就发生一次gc,此时存活下来的就往右移进入s0,在总共达到15次后进入老年代。
一些大对象,也会直接进入老年区,此外有很多复杂的情况不做介绍。
那么gc调优是什么意思?
无论是新生代,还是老年代,都有可能爆满,此时就是引发大清除,每次产生大清除时会耗费大量的性能,甚至可能造成应用暂停。
gc调优就是为了减少这种情况,调节新生代,老年代的比例,合适的比例能减少jvm不必要的损耗。