2010-05-10 8 views
5

Ich bin neu zu solr. Ich habe eine Website entwickelt, die solr für die Indizierung verwendet. Ich möchte die Timeouts behandeln, die während des Lese- und Schreibindexes von solr auftreten können. Bitte erläutern Sie, wie ich mit diesen Ausnahmen umgehen kann. Ich benutze Solrj als Solr Client und meine Website und Solr Server laufen auf dem Tomcat.Behandlung Solr lesen und schreiben Timeout Ausnahme

Thnak Sie!

+0

Wann Sie diesen Timeouts bekommen? Wie oft begehst du? Überprüfen Sie das Solr-Protokoll, um festzustellen, ob WARNUNGEN oder FEHLER vorhanden sind. –

+1

Hallo Maurico, Vielen Dank für Ihr Interesse! Ich bekomme diese Timeouts, wenn ich eine Suchanfrage abfange.Diese Ausnahmen sind nicht zu oft. Ich erhalte die Ausnahme für den Lese-Timeout in meinen Tomcat-Logs wie folgt: org.apache.solgr.client.solrj.SolrServerException: java.net.SocketTimeoutException: Gelesene Zeit abgelaufen bei org.apache.solr.client.solrj.impl.CommonsHttpSolrServer .request (CommonsHttpSolrServer.java:243) bei org.apache.solrc.client.solrj.SolrServer.optimize (SolrServer.java:94) bei org.apache.solrc.client.solrj.SolrServer.optimize (SolrServer.java : 82) ..... ..... –

+0

Die Stack-Ablaufverfolgung besagt, dass die Zeitüberschreitung während einer Optimierungsoperation auftritt, nicht eine Abfrage ... optimieren Sie jedes Mal, wenn Sie eine Abfrage auslösen? –

Antwort

11

Commit und Optimize sind Operationen, um Suchern Updates zur Verfügung zu stellen. Sie sollen nach Aktualisierungen und nicht vor Abfragen ausgeführt werden.

Außerdem sind sie teure Operationen, weshalb Sie sporadische Timeouts bekommen. Sofern Sie keine besonderen Anforderungen haben, empfehle ich die Option <autoCommit/> in Ihrer solrconfig.xml zu setzen. Wie der Name schon sagt, wird das Commit automatisch abhängig von konfigurierbaren Kriterien wie der maximalen Anzahl nicht festgeschriebener Dokumente oder der maximalen Zeit nach dem Hinzufügen von Dokumenten ausgegeben.

Optimieren ist noch teurer als Commit, es schreibt den Index im Grunde neu. Die Häufigkeit einer Optimierung hängt davon ab, wie oft Sie Änderungen festschreiben und wie viele Änderungen pro Festschreibung vorgenommen werden. auch

Siehe:

+0

Vielen Dank Mauricio. Ich habe alle Zweifel beseitigt und habe das entsprechend umgesetzt. Jetzt verwende ich nur commits, wenn die solr-Indizes hinzugefügt oder entfernt werden. Danke! –