Hi, I'm trying to implement my code with SearchManager to make my app thread-safe. I'm follow this post: http://blog.mikemccandless.com/2011/09/lucenes-searchermanager-simplifies.html
There is a class that implements "SearchWarmer". I can't find this class in the Lucene library, what class is that? Thanks. 2013/9/5 Aditya <findbestopensou...@gmail.com> > Hi > > You want to use REST service for your search, then my advice would be to > use Solr. As it has buitl-in functionality of REST API. > > If you want to use Lucene then below are my comments: > 1. In do search function, you are creating reader object. If this call is > invoked for every query then it would be very expensive. You need to create > it once globally and re opon it, if the index is modified. Its better use > SearchManager. > > Regards > Aditya > www.findbestopensource.com - Search from 1 Million open source projects. > > > > On Thu, Sep 5, 2013 at 6:46 AM, David Miranda <david.b.mira...@gmail.com > >wrote: > > > Hi, > > > > I'm developing a web application, that contains a REST service in the > > Tomcat, that receives several requests per second. > > The REST requests do research in a Lucene index, to do this i use the > > IndexSearch. > > > > My questions are: > > - There are concurrency problems in multiple research? > > - What the best design pattern to do this? > > > > public class IndexResearch(){ > > > private static int MAX_HITS = 500; > > > private static String DIRECTORY = "indexdir"; > > > private IndexSearcher searcher; > > > private StandardAnalyzer analyzer; > > > > > > > > > > > > public IndexResearch(){ > > > } > > > public String doSearch(String text){ > > > analyzer = new StandardAnalyzer(Version.LUCENE_43); > > > topic = QueryParser.escape(topic); > > > Query q = new QueryParser(Version.LUCENE_43, "field", analyzer > > > ).parse(text); > > > File indexDirectory = new File(DIRECTORY); > > > IndexReader reader; > > > reader = DirectoryReader.open(FSDirectory.open(indexDirectory)); > > > searcher = new IndexSearcher(reader); > > > > > /*more code*/ > > > > > } > > > } > > > > > > Can I create, in the servlet, one object of this class per client request > > (Is that the best design pattern)? > > > > Thanks in advance. > > > -- Cumprimentos, David Miranda