Erik, Thank you for your reply. I'm goingto use the static IndexSearcher in my Servlet (my index is static).
Thanks :-) -----Original Message----- From: Erik Hatcher [mailto:[EMAIL PROTECTED] Sent: mardi 27 juin 2006 12:49 To: java-user@lucene.apache.org Subject: Re: IndexSearcher in Servlet On Jun 27, 2006, at 5:47 AM, Fabrice Robini wrote: > What is your advice for webApplication ? It all depends :) > - IndexSearcher pool ? No point in that. A single IndexSearcher for searches is all that is ever needed. Having a warming IndexSearcher, as Solr implements, makes sense in some cases. > - New IndexSearcher for each query ? Never! > - Something else ? Again, it all depends on your Lucene usage. If the index is static only a single IndexSearcher is needed. If you you need to manage updates you have to decide how quickly those updates are visible (everyone will always say "immediately" to that question, but pragmatically there are lots of things to consider in this regard). Sorry there isn't a single best answer. But I am quite happy with Solr's mechanism, but I'm using a Ruby on Rails front-end so a web service makes sense in my current project. Erik > > Thanks a lot, > > Fab > > -----Original Message----- > From: Erik Hatcher [mailto:[EMAIL PROTECTED] > Sent: mardi 27 juin 2006 11:41 > To: java-user@lucene.apache.org > Subject: Re: IndexSearcher in Servlet > > > On Jun 27, 2006, at 5:11 AM, heritrix.lucene wrote: >> Hi, >> I also had the same confusion. But today when i did the testing i >> found that >> it will merge your results. Therefore i believe that indexSearcher >> is not >> thread safe. I tried this on 10,000 requests per second. > > You must have something else wrong in your system if you're seeing > results merged (or please provide us a test case that demonstrates > this). > > A static IndexSearcher works just fine, though is not really the > right design for a web application as you'd want to put it into > application scope instead. Statics can be trouble in web > applications that end up getting distributed. > > Erik > > > > >> >> With Regards >> >> On 6/27/06, Ramana Jelda <[EMAIL PROTECTED]> wrote: >>> >>> Hi, >>> You are wrong. >>> >>> In ur case (If I ignore any updates to index) , One IndexSearcher >>> object >>> is >>> enough. >>> IndexSearcher is thread safe. >>> >>> Jelda >>> >>>> -----Original Message----- >>>> From: heritrix.lucene [mailto:[EMAIL PROTECTED] >>>> Sent: Tuesday, June 27, 2006 10:58 AM >>>> To: java-user@lucene.apache.org >>>> Subject: Re: IndexSearcher in Servlet >>>> >>>> Hi, >>>> The same question i asked yesterday. :-) And now i know the >>> answer :0 >>>> >>>> Creating a new searcher for each query will make your >>>> application very very slow....... (leave this idea) U can not >>>> have a static indexsearcher object. It will merge all results >>>> and the user will get the result of their query alongwith the >>>> others :-) >>>> >>>> >>>> The method that i am adopting is, i'll create a pool of >>>> static searchers. >>>> and on every request the servlet will request a free searcher >>>> object from the pool. When he is done with that pool. it'll >>>> return back the searcher object to that pool. This way i'll >>>> reuse my searcher objects. >>>> >>>> >>>> On 6/27/06, Fabrice Robini <[EMAIL PROTECTED]> wrote: >>>>> >>>>> Hello, >>>>> >>>>> >>>>> >>>>> I have a question about the IndexSearcher(). >>>>> >>>>> I have a Servlet that has a searchDocument(String theQuery) >>> method. >>>>> >>>>> These method instantiate a new IndexSearcher at each query: >>>>> >>>>> >>>>> >>>>> searchDocument(String theQuery) >>>>> >>>>> { >>>>> >>>>> Searcher searcher = new IndexSearcher(indexPath); >>>>> >>>>> . >>>>> >>>>> } >>>>> >>>>> >>>>> >>>>> Is it a good way ? Or Is it better to use a static >>>> searcher, and use >>>>> the same for each query (and for each user). >>>>> >>>>> Is it thread safe ? Will results not be mixed to users ? (if >>> user A >>>>> searchs car and user B searchs boats, is it sure that user >>>> A will get >>>>> car and B will get boats, even if the IndexSearcher is >>>> static and is >>>>> the same ?) >>>>> >>>>> >>>>> >>>>> Thanks a lot, >>>>> >>>>> >>>>> >>>>> Fab >>>>> >>>>> >>>>> -- >>>>> No virus found in this outgoing message. >>>>> Checked by AVG Free Edition. >>>>> Version: 7.1.394 / Virus Database: 268.9.5/376 - Release Date: >>>>> 26/06/2006 >>>>> >>>>> >>>>> >>>> >>> >>> >>> -------------------------------------------------------------------- >>> - >>> To unsubscribe, e-mail: [EMAIL PROTECTED] >>> For additional commands, e-mail: [EMAIL PROTECTED] >>> >>> > > > --------------------------------------------------------------------- > To unsubscribe, e-mail: [EMAIL PROTECTED] > For additional commands, e-mail: [EMAIL PROTECTED] > > > -- > No virus found in this incoming message. > Checked by AVG Free Edition. > Version: 7.1.394 / Virus Database: 268.9.5/376 - Release Date: > 26/06/2006 > > > -- > No virus found in this outgoing message. > Checked by AVG Free Edition. > Version: 7.1.394 / Virus Database: 268.9.5/376 - Release Date: > 26/06/2006 > > > > --------------------------------------------------------------------- > To unsubscribe, e-mail: [EMAIL PROTECTED] > For additional commands, e-mail: [EMAIL PROTECTED] --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] -- No virus found in this incoming message. Checked by AVG Free Edition. Version: 7.1.394 / Virus Database: 268.9.5/376 - Release Date: 26/06/2006 -- No virus found in this outgoing message. Checked by AVG Free Edition. Version: 7.1.394 / Virus Database: 268.9.5/376 - Release Date: 26/06/2006 --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]