当 solr 中的 master 和 slave 之间存在复制时(tomcat 是容器),会出现 GC 峰值(大约需要 200 毫秒),并且它似乎回收了比必要更多的资源(内存)(使用的内存大而急剧下降)数量)。首先,这个200ms合理吗?其他人看到的东西?其次,有一种方法可以使 GC 不那么激烈(回收更少,从而减少中断),但我不确定我正在尝试做的事情是否可行,或者我是否正在朝着正确的方向解决问题。
以下是我的 GC 参数供您参考:
-XX:+DisableExplicitGC
-XX:+UseConcMarkSweepGC
-XX:+CMSParallelRemarkEnabled
-XX:CMSInitiatingOccupancyFraction=30
-XX:ParallelCMSThreads=6
-XX:PermSize=64m
-XX:MaxPermSize=64m
-Xms32g
-Xmx32g
-XX:NewSize=512m
-XX:MaxNewSize=512m
-XX:TargetSurvivorRatio=90
-XX:SurvivorRatio=8
-XX:MaxTenuringThreshold=15
-XX:+UseStringCache
-XX:+OptimizeStringConcat
-XX:+UseCompressedOops
-XX:+PrintGC
-XX:+PrintGCDetails
-XX:+PrintGCTimeStamps
-XX:+HeapDumpOnOutOfMemoryError
-XX:HeapDumpPath=...
-XX:+UseNUMA
-XX:+UseCompressedStrings
-XX:+UseBiasedLocking