Asp.MVC和nHibernate和Lucene提问

时间:2010-02-24 14:06:15

标签: asp.net-mvc nhibernate lucene

我有一个Asp.Net MVC应用程序,我正在研究实现一个搜索个人的搜索引擎。我想使用Nhibernate Search& Lucene.Net这样可以在插入或更新个人时保持索引同步,从而在用户运行搜索时可以看到更改。

我遇到的问题是如果多个用户同时更新索引,Nhibernate Search如何处理这个问题呢? Lucene负责锁定吗?

非常感谢任何帮助。

此致

垃圾邮件

2 个答案:

答案 0 :(得分:1)

答案 1 :(得分:0)

Lucene.NET将为您处理锁定,但是由于所有实例都将lockfile存储在temp-folder中,因此运行多个Applications可能会发生冲突锁定。

这是在Lucene 2.3或其他东西中修复的,默认情况下,他们开始将lockfile存储在basedir(所有索引文件所在的位置)中。

虽然,我认为在搜索或从另一个线程/进程写入时索引写入会抛出异常,因此最好相应地处理它(例如,为该实体排队更新)。