0

从 solr 4.0 迁移到 solr6.0 时出现 solr 设置问题。

面临的问题:我的 CPU 消耗达到不可接受的水平。IE。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

我在找什么

  1. 我猜它与码头的 gc 设置有关,因为我不是码头专家(java8)。请帮助如何调整这些设置。另外我应该如何选择这些值或如何调试这些问题?
4

1 回答 1

0

如果您使用 Solr 的默认 jvm 设置,我怀疑这是由于您提到的。您可能遇到了新指标功能在 6.4.1 中引入的这种回归。

它会影响与许多术语匹配的查询,因此诸如前缀查询等内容。您可以:

  1. 等待应该很快出来的 6.4.2
  2. 在 jira 问题中应用补丁,这已经解决了厌倦它的人的问题。您现在可以执行此操作

在您发表评论后进行编辑:如果 solr6.1.0 同样糟糕,那么上述问题不是罪魁祸首。您应该查看所有架构/solrconfig 设置并确保它们有意义。6.4 至少应该与 Solr4.0 相当,在大多数情况下性能更高。我们没有关于您的查询是什么样的信息、您的索引是什么样的等信息,无法为您提供更详细的见解。

于 2017-02-19T19:33:03.420 回答