solr cloud的java错误最有可能是文件处理程序不足
有人能帮我解决这个错误吗,我正在使用solr cloud 5并得到这个结果
WARN - 2015-09-10 06:28:17.804; [ ]
org.eclipse.jetty.server.AbstractConnector$Acceptor;
java.io.IOException: Too many open files
at sun.nio.ch.ServerSocketChannelImpl.accept0(Native Method)
at sun.nio.ch.ServerSocketChannelImpl.accept(ServerSocketChannelImpl.java:241)
at org.eclipse.jetty.server.ServerConnector.accept(ServerConnector.java:377)
at org.eclipse.jetty.server.AbstractConnector$Acceptor.run(AbstractConnector.java:500)
at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:635)
at org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(QueuedThreadPool.java:555)
at java.lang.Thread.run(Thread.java:744)
无法理解如何解决这个问题
# 1 楼答案
每个索引包含多个段,每个段包含多个部分,每个部分存储为单独的文件。您可以在solrconfig中将
useCompoundFile
设置为true
。xml。复合文件格式将所有段零件填充到单个文件中。但它不如非复合格式有效如果在solrconfig中为
mergeFactor
参数使用更高的值。xml,您可能想减少它。因此,对于solr后台进程,要合并的段文件将更少。请记住,合并因素对solr索引和搜索有好处也有坏处。请查看Merging Index Segments了解更多信息