solr 4.0 から solr6.0 への移行中の solr 設定に関する問題。
直面している問題: CPU 消費量が許容範囲を超えています。すなわち。solr4.0 の負荷は 6 から 10 の間ですが、solr 6 の負荷は 100 に達し、その生産以来、私はすぐにロールバックしました。
私のSolr4設定
- Running on tomcat
- JVM Memory : 16GB
- 24 core cpu
- JVM settings :
- JVM Runtime Java HotSpot(TM) 64-Bit Server VM (24.45-b08)
- Processors 24
- Args : Paths mentioned here
**My Solr6 setting**
- Running on jetty
- JVM Memory : 20GB
- 32 core cpu
- JVM settings :
- Oracle Corporation Java HotSpot(TM) 64-Bit Server VM 1.8.0_45 25.45-b02
- Processors 32
- Args
- DSTOP.KEY=solrrocks
- DSTOP.PORT=7983
- Djetty.home=/usr/local/solr-6.4.1/server-Djetty.port=8983
- Dlog4j.configuration=file:/usr/local/solr-6.4.1/example/resources/log4j.properties
- Dsolr.install.dir=/usr/local/solr-6.4.1-Dsolr.log.dir=/usr/local/solr-6.4.1/example/techproducts/solr/../logs
- Dsolr.log.muteconsole
- Dsolr.solr.home=/usr/local/solr-6.4.1/example/techproducts/solr-Duser.timezone=US/Eastern
- XX:+AggressiveOpts
- XX:+CMSParallelRemarkEnabled
- XX:+CMSScavengeBeforeRemark
- XX:+ParallelRefProcEnabled
- XX:+PrintGCApplicationStoppedTime
- XX:+PrintGCDateStamps
- XX:+PrintGCDetails
- XX:+PrintGCTimeStamps
- XX:+PrintHeapAtGC
- XX:+PrintTenuringDistribution
- XX:+UseCMSInitiatingOccupancyOnly
- XX:+UseConcMarkSweepGC
- XX:+UseGCLogFileRotation
- XX:-UseSuperWord
- XX:CMSFullGCsBeforeCompaction=1
- XX:CMSInitiatingOccupancyFraction=70
- XX:CMSMaxAbortablePrecleanTime=6000
- XX:CMSTriggerPermRatio=80
- XX:GCLogFileSize=20M
- XX:MaxTenuringThreshold=8
- XX:NewRatio=2
- XX:NumberOfGCLogFiles=9
- XX:OnOutOfMemoryError=/usr/local/solr-6.4.1/bin/oom_solr.sh 8983 /usr/local/solr-6.4.1/example/techproducts/solr/../logs
- XX:PretenureSizeThreshold=64m
- XX:SurvivorRatio=15
- XX:TargetSurvivorRatio=90-Xloggc:/usr/local/solr-6.4.1/example/techproducts/solr/../logs/solr_gc.log-Xms21g-Xmx21g-Xss256k-verbose:gc
私が探しているもの
- 私はjetty(java8)の専門家ではないので、jettyのgc設定に関連していると思います。これらの設定を調整する方法を教えてください。また、これらの値を選択する方法、またはこれらの問題をデバッグする方法を教えてください。