使用Solr后端的Django Haystack中的多个核心

时间:2011-10-07 06:24:28

标签: django search solr multicore django-haystack

如何在使用多个内核时配置HAYSTACK_SOLR_URL?

我已经将它设置为core0的地址,这是有效的,但只使用一个核心......

文档对我来说并不那么明显......它只是说

...
# ...or for multicore...
   HAYSTACK_SOLR_URL = 'http://127.0.0.1:8983/solr/mysite'

什么是mysite?

我实际上正在运行apache-solar-3.3.0 / example,并在示例目录中复制了多核目录,并更新了架构和conf文件/目录。

非常感谢。

2 个答案:

答案 0 :(得分:2)

  <cores adminPath="/admin/cores">
    <core name="core0" instanceDir="core0" />
    <core name="core1" instanceDir="core1" />
  </cores>

所以,你会通过

搜索core0
http://127.0.0.1:8983/solr/core0/select/?q=*

如果你有一个核心的“谜”

http://127.0.0.1:8983/solr/mysite/select/?q=*

然而,如果它不是多核的

http://127.0.0.1:8983/solr/select/?q=*

假设您将solr应用程序命名为“solr”。


请完整参考多核文档。您可以动态加载/卸载核心,甚至可以在不丢弃请求的情况下将活动核心与另一核心交换。

答案 1 :(得分:2)

在我们的项目中,我们有3个核心,称为“汽车”,“家”,“工作”

我有以下设置:

CORE_HOUSE = http://localhost:8080/solr/homes/
CORE_HOUSE = http://localhost:8080/solr/cars/
CORE_HOUSE = http://localhost:8080/solr/jobs/

无论何时需要它们,都可以参考设置变量(其中localhost:8080是你的solr安装地址)