Wordpress搜索,大型网站,共享服务器 - 我应该使用MySQL FullText索引,Lucene.net ......?

时间:2011-07-23 11:48:48

标签: c# php mysql search lucene

我正在创建一个在共享服务器上运行的网站,我需要找到一个好的搜索引擎。我应该使用什么搜索引擎框架来满足我的要求?

以下是一些要求

  • ~100,000个文件需要编入索引
  • 共享服务器(但可以运行ASP.Net和php应用程序)
  • 需要能够将搜索结果限制为特定标签,类别
  • 需要能够按相关性+受欢迎程度或相关性+日期
  • 进行排序
  • 在每次页面加载时都会进行搜索(尽管我可能会实现缓存)。它的工作方式有点像stackoverflow。我有一份主要文件,然后在右侧加载了相关文件的建议。这发生在每一页
  • 软件是免费的,对任何类型的托管搜索解决方案(目前无论如何)的预算都很少

以下是我的想法

  • zend lucene search - 对于如此庞大的网站来说,性能还不够好
  • Google自定义搜索 - 网站/查询数量有限
  • Solr,Sphinx,java lucene - 在共享服务器上,所以我无法安装这些
  • Lucene.net - 我不确定这是否可行。我的托管公司允许我运行php和asp.net网站......但也许Lucene.net必须作为一个单独的进程运行?
  • MySql FullText搜索 - 我不知道像我所描述的大型网站的性能

这似乎是一个难以满足的法案,但我希望我不需要提出替代设计。

2 个答案:

答案 0 :(得分:0)

对于这类功能,以及如此众多的文档,我绝对不会使用MySQL的全文:我肯定会使用一些外部索引/搜索解决方案(如Solr,Lucene,...)< / em>的

就像你说的那样:

  • 你有太多Zend Lucene (纯PHP实现)的文档。
  • MySQL全文 - 呃,不是那么强大,慢,......
  • Solr / Sphinx要求您安装


不确定Lucene.NET,但是对于那种数据量,你真的没有自己的服务器,所以你可以安装正常工作所需的东西吗?

如果搜索是您的应用程序(似乎是)的重要部分,那就更是如此。

答案 1 :(得分:0)

如果我没有错,你正在使用WOrdpress。你是否可以将MongoDB和php-mongo扩展安装到你的服务器上,如果是的话,使用MongoLantern的MongoDB FUlltext搜索可以为你提供高效的插件。它也可以用wordpress安装并用mongodb全文搜索覆盖wordpress搜索。

我在我的一些项目中使用它并且看起来效果很好。你可以从这里获得MongoLantern WP插件:http://wordpress.org/extend/plugins/mongolantern/