我们正在考虑一种架构,其中应用程序(通常)重建我们正在使用的大量Lucene索引。重建的最后一项任务是使用文件共享或FTP将重建的索引复制到最后一个索引。
我有点担心如果最终用户在我们复制新索引的过程中搜索该索引会发生什么。
任何人都有任何想法,经验,更好的模式来实现这一目标?我熟悉SOLR,这将是一种方法,而不是熟悉来自LinkedIn的Zoie。我宁愿在现阶段避免这两种情况,也可以选择我们自己开发的,相当简单的“只需重建它并将其复制到顶部”的方法。
答案 0 :(得分:0)
一种选择是直接将索引直接存储在AppFabric缓存中而不是文件系统中。另一种方法是创建自己的目录实现,它包含在FSDirectory周围并监视一个单独的临时目录,如果它看到准备好的新索引,则阻止后续调用,直到它复制它们。