5

我有一个包含大约 1+ 百万条记录的应用程序。

  • 我计划使用Solr来处理所有搜索。
  • 我还有一个自动完成功能。

我知道Redis的自动完成速度非常快,但是Solr也有自己的自动完成功能。

问题:我应该使用Solr作为主要搜索引擎(用于非自动完成任务)和一个单独的Redis用于自动完成,还是我最好只使用 Solr 来完成这两个任务?

笔记:

  • 负载平衡也是一个问题。
  • 顺便说一下使用 Rails。

谢谢。

4

1 回答 1

9

我认为您只会使 Redis 的事情变得不必要地复杂化(我通常是 Redis 的忠实粉丝)。
正如您已经提到的,Solr 有自己的自动完成功能。
我不会说 100 万个文档是生产环境的一个大索引。相反,我会说这是一个相当小的。
所以我不希望 Solr 的自动完成有任何问题。
除了您建议的方法之外,这里还有一种实现它的不同方法,以分步教程的形式编写。

你是对的,Redis 非常适合大规模的东西,但是由于你的整个索引会增长,在某些时候你必须扩展 Solr(不仅仅是为了自动完成)。

于 2012-04-23T08:20:57.740 回答