jvm 在Java 1.8中,如何选择垃圾收集器?

dffbzjpn  于 2023-01-26  发布在  Java
关注(0)|答案(1)|浏览(124)

假设我的环境是Java1.8,我的应用程序是一个批处理应用程序,没有延迟要求,我不知道应该选择Parallel GC还是G1 GC?
我知道并行GC针对吞吐量进行了优化,更适合像我这样的批处理应用程序,但我发现我周围的所有Java应用程序都在使用G1垃圾收集器,所以我不确定如果我有G1,是否不需要并行GC,或者如果我正在寻找吞吐量,并行GC是最好的选择。

lc8prwob

lc8prwob1#

我浏览了Java®性能手册的第一章,其中有一段描述了这一点:
在撰写本文时,G1主要针对暂停时间较短的大型Java堆的用例,以及使用CMS GC的应用程序。有计划使用G1来针对吞吐量用例,但对于希望获得高吞吐量并能容忍较长GC暂停时间的应用程序,并行GC是当前更好的选择。
这正好回答了我的问题,如果一个项目纯粹是为了完成定时任务或使用MQ,那么它通常不需要暂停时间,这对于并行GC来说更合适。

相关问题