Sofiya Strochyk <s...@interlogic.com.ua> wrote:
> Target query rate is up to 500 qps, maybe 300, and we need
> to keep response time at <200ms. But at the moment we only
> see very good search performance with up to 100 requests
> per second. Whenever it grows to about 200, average response
> time abruptly increases to 0.5-1 second. 

Keep in mind that upping the number of concurrent searches in Solr does not 
raise throughput, if the system is already saturated. On the contrary, this 
will lower throughput due to thread- and memory-congestion.

As your machines has 12 cores (including HyperThreading) and IO does not seem 
to be an issue, 500 or even just 200 concurrent searches seems likely to result 
in lower throughput than (really guessing here) 100 concurrent searches. As 
Walther point out, the end result is collapse, but slowdown happens before that.

Consider putting a proxy in front with a max amount of concurrent connections 
and a sensible queue. Preferably after a bit of testing to locale where the 
highest throughput is. It won't make you hit your overall goal, but it can move 
you closer to it.

- Toke Eskildsen

Reply via email to