Lucene性能调整

1、调整MaxBufferedDocs和MergeFactor,经过调试,发现MaxBufferedDocs=1000,MergeFactor=100时性能较好。

indexModifier = new IndexModifier(@"c:\indexpath",new StandardAnalyzer(),true);
indexModifier.SetMaxBufferedDocs(
1000);
indexModifier.SetMergeFactor(
100);

2、使用IndexModifier类,线程安全的。
indexModifier.AddDocument(document);

3、使用线程池ThreadPool,有效利用硬件的特性。经调试,5个线程的效果是相当好的。
ThreadPool.SetMaxThreads(55);
    ThreadPool.QueueUserWorkItem(WaitCallBack, state);

4、最后别忘记了优化
indexModifier.Flush();
indexModifier.Optimize();

5、使用RAMDirectory并不能带来多少性能改善,MaxBufferedDocs同样也是设置缓存

posted on 2007-08-14 18:01  amber lee zhao  阅读(1068)  评论(0编辑  收藏  举报

导航