我很快就会将我的网站上传到 VPS。这是一个分类网站,使用Solr与 MySql 集成。
每当放置或删除新的分类时,Solr 就会更新。
我需要一种方法来使commit()
and optimize()
自动化,例如每 3 小时左右一次。
我怎样才能做到这一点? (请详细说明)
什么时候最适合优化?
Thanks
您可以设置一个 cron 任务,定期执行对 Solr REST 接口的远程调用,例如:
curl 'http://<SOLR_INSTANCE_URL>/update?optimize=true'
查找有关更新 Solr 索引的更多信息here http://wiki.apache.org/solr/UpdateXmlMessages#A.22commit.22_and_.22optimize.22.
引用Solr教程 http://lucene.apache.org/solr/tutorial.html:
提交可能是一项昂贵的操作
所以最好做很多改变
批量索引,然后发送
最后提交命令。有
还有一个优化命令
与 commit 相同,除了
将所有索引段合并为
单段,使其更快
搜索并导致任何删除
要删除的文档。
UPDATE:此外,可以在 solrconfig.xml 中启用自动提交功能(在UpdateHandler
部分):
<autoCommit>
<maxDocs>10000</maxDocs> <!-- maximum uncommited docs before autocommit triggered -->
<maxTime>86000</maxTime> <!-- maximum time (in MS) after adding a doc before an autocommit is triggered -->
</autoCommit>
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)