我正在使用Solr-php-client通过php与Solr通信.
这段代码触发了solr优化命令:
$solr->optimize();
我想知道是否有任何方法可以确定优化已完成?
这是因为我的网站上有一个管理页面,每天必须手动对该页面进行一次优化,以优化Solr索引,但是编写此代码很困难.
当前,我有一个带有提交按钮的简单表单,该按钮触发了optimize()命令,但是我必须以某种方式确认优化已经进行,这就是这里的问题.
您知道有什么方法可以确认Solr中的优化吗?
谢谢
解决方法:
Optimize命令的documentation指定默认情况下,该命令将阻塞,直到将所有更改都写入磁盘并且新的搜索器可用为止.因此,如果保留这些默认值,则在命令返回时,可以认为已完成优化.请注意,根据您当前拥有的段数以及要转到的段数,命令可能会阻塞很长时间.我看到优化需要最多一个小时才能完成.