在没有多核的情况下重新加载 Solr 配置

问题描述 投票:0回答:2

是否可以在不设置多核或重新启动 servlet 容器的情况下重新加载 Solr 配置?

我想使用管理中的分析选项卡调整一些

链,并将参数调整到我的 ,但是在对 schema.xml 或 solrconfig.xml 进行每次小更改后都必须重新启动 servlet 容器,这有点痛苦而且很费时间。

solr lucene
2个回答
3
投票
SOLR 中始终有一个核心。默认情况下,SOLR 实例创建一个名为

collection1 的核心。如果您有单核并且不确定如何在运行时重新加载,您可以使用这个,

http://localhost:8080/solr/admin/cores?action=RELOAD&core=collection1
    

1
投票
据我所知,在线重新加载需要多核配置,事实证明这并不难:

将这个

solr.xml

放入solr主目录

<solr persistent="false" sharedLib="lib"> <cores adminPath="/admin/cores" defaultCoreName="core0"> <core name="core0" instanceDir="." /> </cores> </solr>

重新启动 servlet 容器。

点击这样的 URL 来重新加载配置:

http://localhost:8983/solr/admin/cores?action=RELOAD&core=core0

要消除其余的麻烦,您可以通过在

conf

 目录中运行以下脚本将其设置为自动重新加载配置。

get_on_fsevent.rb "http://localhost:8983/solr/admin/cores?action=RELOAD&core=core0"

get_on_fsevent.rb:

#!/usr/bin/env ruby require 'rubygems' require 'rb-fsevent' require 'net/http' require 'uri' uri = URI.parse(ARGV.first) fsevent = FSEvent.new fsevent.watch Dir.pwd do |directories| puts "Detected change. Requesting #{ARGV.first}" puts Net::HTTP.get_response(uri) end fsevent.run
    
© www.soinside.com 2019 - 2024. All rights reserved.