2011-04-20 18 views
5

SOLR sunucusunu çağırdığımızda "bağlantı sıfırlama" hatasıyla karşılaşıyoruz. Ve eşzamanlı yükümüz oldukça küçük. İşte Solr istemci tarafında "Bağlantı Sıfırlama" gerçekleşiyor

solr için Tomcat bağlayıcı yapılandırma geçerli:

<Connector port="8983" protocol="HTTP/1.1" 
      connectionTimeout="20000" maxThreads="40000" minSpareThreads="400" maxSpareThreads="5000" maxKeepAliveRequests="100" URIEncoding="UTF-8" 
      redirectPort="8943" /> 

Ve burada bizim SOLR müşteriden var olduğunu: SOLR istemci kodu ile okuyarak çekim sıkıntıdan sonra, bulduğumuz

Caused by: org.apache.solr.client.solrj.SolrServerException: java.net.SocketException: Connection reset 
at org.apache.solr.client.solrj.impl.CommonsHttpSolrServer.request(CommonsHttpSolrServer.java:472) 
at org.apache.solr.client.solrj.impl.CommonsHttpSolrServer.request(CommonsHttpSolrServer.java:243) 
at org.apache.solr.client.solrj.request.QueryRequest.process(QueryRequest.java:89) 
at org.apache.solr.client.solrj.SolrServer.query(SolrServer.java:122) 

... 36 more 
Caused by: java.net.SocketException: Connection reset 
at java.net.SocketInputStream.read(SocketInputStream.java:168) 
at java.io.BufferedInputStream.fill(BufferedInputStream.java:218) 
at java.io.BufferedInputStream.read(BufferedInputStream.java:237) 
at org.apache.commons.httpclient.HttpParser.readRawLine(HttpParser.java:78) 
at org.apache.commons.httpclient.HttpParser.readLine(HttpParser.java:106) 
at org.apache.commons.httpclient.HttpConnection.readLine(HttpConnection.java:1116) 
at org.apache.commons.httpclient.MultiThreadedHttpConnectionManager$HttpConnectionAdapter.readLine(MultiThreadedHttpConnectionManager.java:1413) 
at org.apache.commons.httpclient.HttpMethodBase.readStatusLine(HttpMethodBase.java:1973) 
at org.apache.commons.httpclient.HttpMethodBase.readResponse(HttpMethodBase.java:1735) 
at org.apache.commons.httpclient.HttpMethodBase.execute(HttpMethodBase.java:1098) 
at org.apache.commons.httpclient.HttpMethodDirector.executeWithRetry(HttpMethodDirector.java:398) 
at org.apache.commons.httpclient.HttpMethodDirector.executeMethod(HttpMethodDirector.java:171) 
at org.apache.commons.httpclient.HttpClient.executeMethod(HttpClient.java:397) 
at org.apache.commons.httpclient.HttpClient.executeMethod(HttpClient.java:323) 

Bu, SOLR'ın Tomcat yapılandırmasında uygun olmayan bir bağlantı zaman aşımı ayarı nedeniyle olabilir. Onu varsayılan olarak değiştirmeye karar veriyoruz (sonsuz zaman aşımı). Öyleyse, sorum şu, bu değeri sonsuza ayarlarken diğer performans sorunlarını ortaya çıkaracak mı?

+0

Solr sunucusu bazı web sunucusu tarafından önlenmiş (örn. Apache)? Olabilecek en kötüsü, IMO, bazı istemcinin bağlantı kurması ve bundan sonra tel üzerinde herhangi bir şey göndermemesi ve daha sonra bağlantıyı keserek dosya tanıtıcı sızmasına neden olmasıdır. Önündeki bir web sunucusu bu sorunu hafifletebilir. – user1452132

cevap

0

Solr'ı arayan istemci nedir? ve sorgu yapılmış? Sorgunun sebebi ne olursa olsun çok uzun sürmeyen bir geri dönüş mü?

İlgili konular