对于将 Lucene.NET 集成到 ASP.NET MVC 应用程序中,是否有任何建议?
我想知道是否有任何关于将基于 Lucene.NET 的搜索集成到 ASP.NET MVC Web 应用程序中的建议、最佳实践或重要提示?
我在不同地方读过(或认为我读过)的内容包括以下内容:
- 一个
IndexWriter
,许多IndexReader
- 当索引更新时,重置/重新初始化
IndexReader
s
在开始之前我还应该阅读其他有用的提示或资源吗?
谢谢,
基隆
I'm wondering if there are any recommendations, best practises or top-tips for integrating a Lucene.NET based search into an ASP.NET MVC web application?
Things I've read (or think I've read) in various places include the following:
- One
IndexWriter
, manyIndexReader
s - When the index is updated, reset/ re-initialise the
IndexReader
s
Are there any other useful tips or resources I should read before starting?
Thanks,
Kieron
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
以下是我的提示(排名不分先后):
我之前的一个项目中存在一些问题:
我建议查看 RavenDb 的源代码,因为它构建在 Lucene 之上并使用了许多最佳实践。
Here are my tips (in no particular order):
A few gotchas from one of my previous projects were:
I would suggest looking at the source code for RavenDb as it is built on top of Lucene and uses a number of best practices.
RavenDb 绝对是最简单的方法——它确实是 lucene++。
至于如何使用它,我建议查看 SubText 博客引擎。代码已获得 MIT 许可,因此您可以在您的项目中使用它,并且它有一个设计良好的索引编写器/读取器。
在我们的应用程序中,我们往往有一名作者和一个拥有许多读者的单独应用程序。锁定策略在这里可能是关键——特别是确保读者不会尝试锁定索引。我对我们为实现这一目标而必须使用的具体术语一无所知。
RavenDb is definitely the easiest way to go here -- it really is lucene++.
In terms of how to use it, I'd recommend looking at the SubText blogging engine. Code is MIT licensed so you can just use it in your project and it has a very well designed index writer/reader.
In our apps, we tend to have one writer and a separate app with many readers. The locking strategy can be key here--especially make sure the readers don't try and lock the index. I'm blanking on the specific term we had to use to make this happen.