1。lucene的索引尽量不要频繁而小量的编制,比如:用户每发一个贴子,就加入索引,那样对索引的结构和效率不利。
可以采用定时或者定量,批量处理索引的方式。
2。在批量处理的基础上,解决冲突的问题的方案之一就是在同一个线程里操作Writer和reader。我们知道,lucence在
1.4之前是没有所谓的modify操作的,所有的modifer操作可以分解为delete和add,那么实际上,在批量索引的任务栈里
只有两种类型的操作:delete和add。让处理线程总是先执行delete,在执行add就好。
3。任何时候,索引线程实例只有一个在工作!
满足以上3点,能较好地处理目前大部分情况下的lucene索引更新要求