• 结论:

    • 跟服务器CPU核心数有关,核心数是单核CPU的,采用的是Serial + Serial Old;多核(一般是4核以上)的是Parallel Scavenge + Parallel Old
  • 证明过程:

  1. 单核服务器 场景下

未指定垃圾回收器

开启Serial 或 Parallel Scavenge 或 CMS搜集器

在单核场景下 不指定垃圾搜集器与指定Serial + Serial Old 垃圾日志完全相同

  1. 多核服务器 场景下

未指定垃圾回收器与指定不同垃圾回收器

可见默认情况下多核场景下使用的是Parallel Scavenge + Parallel Old搜集器

3.排除操作系统的影响,在windows下查看 java -XX:+PrintCommandLineFlags -XX:+PrintGCDetails -version

我电脑是6核的,可再次得出结论,在多核场景下默认使用Parallel Scavenge + Parallel Old收集器