草庐IT

java - Solr 5.1 : Solr is creating way too many log files

我正在处理Solr5.1创建过多日志文件的问题。每次重新启动Solr时,Solr会在一周内定期创建以下文件,我需要它停止:solr_gc_xxxxxxxx_xxxx类型的文件,其中x分别代表日期和某种标识号。这些包含垃圾收集信息。solr_log_xxxxxxxx_xxxx类型的文件,其中x分别代表日期和某种标识号。这些包含您在solr.log中找到的相同类型的信息。一个类型为solr-[port]-console.log的文件。它总是包含只有以下文本:警告:系统属性和/或JVM参数放。考虑使用--dry-run或--exec在一个星期内,我收集了将近30个类型1和类型2的文件!更糟糕

java - 处理Solr读写超时异常

我是solr的新手。我开发了一个使用solr进行索引的网站。我想处理在solr读写索引期间可能发生的超时。请指导我如何处理这些异常。我使用solrj作为solr客户端,我的网站和solr服务器在tomcat上运行。谢谢你! 最佳答案 提交和优化是为搜索者提供更新的操作。它们旨在在更新之后运行,而不是在查询之前运行。此外,它们是昂贵的操作,这就是您偶尔会出现超时的原因。除非您有特殊要求,否则我建议设置solrconfig.xml中的选项。顾名思义,它会根据可配置的标准自动发出提交,例如未提交文档的最大数量或添加文档后的最长时间。Opt

java - SLF4J 记录到文件与 DB 与 Solr

我需要一些有关SLF4J日志记录的建议。目前,我们正在为我们的Java网络应用程序使用SLF4J日志记录(log4j绑定(bind)),它使用简单的ConsoleAppender。我们的下一步是研究可以保存日志的地方。我们的应用程序每天处理大约100,000条消息。每条消息生成大约60-100行日志。我们的目标是能够快速搜索和找到失败的消息(使用messageId)并确定失败的原因。我的问题是:下面哪个是存储我们日志的好地方:文件数据库太阳能谢谢。 最佳答案 考虑从log4j切换到使用logbackslf4jAPI的实现Logbac

java - 如何在 Java 中为 Solr 创建通用日期格式化程序?

我有一个要求,在将日期索引到Solr之前,可以按以下格式传递日期。以下是传递日期的示例StringdateStr="2012-05-23T00:00:00-0400";StringdateStr1="May24,201204:57:40GMT";StringdateStr2="2011-06-21";标准的Solr格式是"yyyy-MM-dd'T'HH:mm:ss'Z'"。我尝试过SimpleDateFormat,但无法编写支持各种格式的通用程序。它最终抛出解析异常。我也试过joda时间,但到目前为止在UTC转换方面还没有成功。publicstaticStringtoUtcDate(f

java - 线程 "main"java.lang.NoClassDefFoundError : org/apache/commons/codec/DecoderException 中的异常

我尝试通过Solrj查询Solr这是我的代码publicclassReadFromSolr{publicstaticvoidmain(String[]args)throwsMalformedURLException,SolrServerException{Stringurl="http://localhost:8983/solr";try{SolrServerserver=newCommonsHttpSolrServer(url);ModifiableSolrParamsparams=newModifiableSolrParams();params.set("qt","/select"

java - solr 多核发布数据

我在多核模式下使用solar应用程序,我无法发布数据(xml),当我尝试通过命令行(cmdwindows)将数据发布到solr时,我收到一个错误...->路径中缺少solr核心名称所以请给我详细的答案 最佳答案 确保核心名称在路径中:http://host:8983/solr/CORE/update在多核设置中使用post.jar时,您必须使用包含CORE名称的url覆盖默认url参数:java-Durl=http://...-jarpost.jar您可以键入java-jarpost.jar-help以获取可以覆盖的参数列表。

java - 基于 Solr 规则的提升

我正在使用Solr-5.0.0。我正在搜索字段product_name。我需要添加一些规则以获得相关结果。如果我搜索一个词,如果存在完全匹配,它应该排在第一位。例如:如果我搜索laptop,它应该首先返回与laptop完全相同的product_name。如果我搜索一个以上的词,它应该遵守规则1。同时最小词长距离的名称排在第一位。例如:如果我搜索delllaptop,它应该首先返回Delllaptop而不是dellinspironlaptop。如果我搜索单词,它不应返回包含with或without单词的结果。例如:在搜索laptopbag时,它不应该首先给出delllaptopwithb

java - Solr 不会覆盖 - 重复的 uniqueKey 条目

我对Solr5.3.1有疑问。我的架构相当简单。我有一个uniqueKey,它是字符串形式的“id”。索引、存储和必需的、非多值的。我首先使用“content_type:document_unfinished”添加文档,然后覆盖相同的文档,具有相同的id但另一个content_type:document。然后该文档在索引中出现两次。同样,唯一的uniqueKey是字符串形式的“id”。该id最初来自mysql-indexprimaryint。而且看起来这种情况不止发生一次:http://lucene.472066.n3.nabble.com/uniqueKey-not-enforced

java - 在 Solr 中超时查询

我通过自定义开发层查询到solr,我在我的层中超时的几个查询仍在solr实例中。solr中是否有一个参数可用于使特定查询超时 最佳答案 如Solrquerycontinuesafterclientdisconnects?中所述和writtenintheSolrFAQInternally,Solrdoesnothingtotimeoutanyrequests--itletsbothupdatesandqueriestakehoweverlongtheyneedtotaketobeprocessedfully.但在FAQ的同一位置写着H

java - Solr 和 postgresql 集成

我想将搜索引擎Solr添加到我的Java应用程序中。我想在Solr中索引一些信息,但不是所有信息,因为我的数据库非常具体。我不想解释所有内容,因为它很复杂,所以我将使用一个简单的示例。假设我有一个名为T的表,其中有两列col1和col2:col1|col2------------------|----------sometext...|123anothertext...|41blabla...|124我只想索引Solr引擎中的col1列。我不想在Solr中索引col2列-我知道这是可能的,但我不想这样做。在搜索我的应用程序时,我想从两列中过滤信息。例如,我需要在col1中获取具有"Lo