是否有可能在沒有設置多核或重新啓動servlet容器的情況下reload Solr configuration?在沒有多核的情況下重新加載Solr配置
我想調整一些<分析>鏈與admin分析選項卡,然後調整參數來我<requestHandler>,但其每一個細小的變化SCHEMA.XML或solrconfig後重新啓動servlet容器。 XML有點痛苦和耗時。
是否有可能在沒有設置多核或重新啓動servlet容器的情況下reload Solr configuration?在沒有多核的情況下重新加載Solr配置
我想調整一些<分析>鏈與admin分析選項卡,然後調整參數來我<requestHandler>,但其每一個細小的變化SCHEMA.XML或solrconfig後重新啓動servlet容器。 XML有點痛苦和耗時。
是最好的,我可以告訴大家,在網上重裝需要多核配置,事實證明是不太難:
將這個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
中始終有SOLR核心。默認情況下,SOLR實例創建一個名爲collection1的核心。如果你有一個單一的核心,不知道如何在運行時重新加載,你可以使用這個,
http://localhost:8080/solr/admin/cores?action=RELOAD&core=collection1
如果你想查看可用來管理SOLR核心的各種命令,檢查[SOLR命令]這個博客帖子( http://www.installationpage.com/solr/solr-admin-core-commands/)。 – arunchinnachamy