Hi,

I tried stressing Lucene in a controlled environment: one static
IndexSearcher for an index that doesn't change, and in same process I create
a number of Threads that call this Searcher concurrently for a limited time.
I expected the number of successful queries to increase when using more
threads, but this is not the case. From 1 thread to 10 I see 25% increase,
but from 10 threads to 100 there is no change, only the average response
time increases. same goes for 200 threads. I tried RAMDirectory and
FSDirectory, and the behavior is the same.
I Extract the first 100 results from the Hits object, but on RAMDirectory
this should be insignificant, right?

I tested this in version 1.4.3 and 1.9rc1, and they are both the same in
this aspect. 1.9rc1 is faster, but does not benefit from multi threading.

Did anyone see other behaviour?

Will it be better to dedicate a searcher for each thread (maybe
http://java.sun.com/j2se/1.4.2/docs/api/java/lang/ThreadLocal.html)?


Thanks,
Oren Shir

Reply via email to