读JForum Lucene

     JForum使用Lucene做全文索引,其中包括新增、修改、删除和重建索引,然后就是搜索。内容非常简单。

JForum每次更新到第100条记录就会通知searcher去更新打开索引,使用的是

this.search.close();
this.openSearch();
 

可能是由于索引比较小,这种方法打开索引所需时间较短,属ms级,但若索引较大,则不允许这样做。可以每当更新到第100条然后使用线程在后台重新打开索引,打开后再改变索引指向即可。

      由代码可以看出,建索引使用了同步,搜索使用了静态方法。由于是实时更新,所以需要同步。

      重建索引使用了RAMDirectory,当内存中有一定数量的索引,则将其合并到硬盘索引。

 

你可能感兴趣的:(Lucene)