【发布时间】:2015-10-31 15:27:35
【问题描述】:
我正在开发一个可供 10 个用户使用的应用程序。 我将使用 Lucene 来获得更好的搜索性能。 我可以在服务器中生成 Lucene 索引文件并让 10 个应用程序共享相同的 Lucene 索引文件吗? 只有一个应用程序可以写入来更新索引,而其他 9 个应用程序是只读的。
【问题讨论】:
我正在开发一个可供 10 个用户使用的应用程序。 我将使用 Lucene 来获得更好的搜索性能。 我可以在服务器中生成 Lucene 索引文件并让 10 个应用程序共享相同的 Lucene 索引文件吗? 只有一个应用程序可以写入来更新索引,而其他 9 个应用程序是只读的。
【问题讨论】:
是的,您可以读取来自不同应用程序的相同 lucene 索引。如果应用程序在同一个 JVM 上,您也可以共享同一个 IndexSearcher,因为索引的打开/关闭非常昂贵。
无论如何,您只能有一个 IndexSearcher 实例用于应用程序。
只有一个客户端/应用程序可以写入索引同时,所以你可以编写索引也来自不同的应用程序,但您必须同步索引管理操作:打开/写入/关闭。
【讨论】: