Simultaneous queries in Solr

2019-06-24 10:29发布

问题:

Hej,

I am deploying a Solr server containg more than 30m docs. Currently, I am testing the searching performance and the results are very dependant of the number of simultaneous queries I execute:

1 simultaneous query: 2516ms

2 simultaneous queries: 4250,4469 ms

3 simultaneous queries: 5781, 6219, 6219 ms

4 simultaneous queries: 6484, 7203, 7719, 7781 ms ...

Jetty threadpool is configured as default:

New class="org.mortbay.thread.BoundedThreadPool"

Set name="minThreads" 10

Set name="lowThreads" 50

Set name="maxThreads" 10000

I would like to know if there is any factor I can set for decreasing the impact of the simultaneous requests in response times.

Solrconfig is configured also as default but without cache for measuring worst cases and mergeFactor=5 (searching will be more requested than updating).

Thanks in advance

回答1:

Why are you trying to do this with caching turned off? What exactly are you trying to measure?

You have effectively forced Solr (Lucene) to perform every search from the disk. What you are actually measuring is concurrency of Java itself combined with your OS and disk throughput. This has nothing to do with Jetty or Solr.

Caches are your friend. You really should be using them in any sort of a production capacity. In my opinion, you should be measuring your throughput under load while varying the caches to see what the tradeoff is between cache size and throughput.



回答2:

Please check out this IBM Tutorial for Solr

I got a great help from this.

Hope you will find your answer. :-)