思考狮身人面像 - 每次更新或创建模型时Roats索引,如何停止?

时间:2009-11-27 22:42:41

标签: ruby-on-rails search sphinx thinking-sphinx

每次我在Rails应用程序中创建或更新模型时,Sphinx都会发生以下输出:

  

Sphinx 0.9.8.1-release(r1533)   版权所有(c)2001-2008,Andrew   Aksyonoff

     

使用配置文件   '/Users/jason/development/projects/active/project/config/development.sphinx.conf' ...   索引索引'ad_delta'...已收集   17个文档,0.0 MB收集0 attr   值排序0.0 Mvalues,完成100.0%   排序0.0 Mhits,100.0%总共17   docs,944字节总计3.827秒,   246.69字节/秒,4.44 docs / sec旋转索引:成功发送   SIGHUP to searchd(pid = 10655)。

导致了巨大的性能损失。

有没有办法防止这种情况发生在sphinx(thinking_sphinx)?

1 个答案:

答案 0 :(得分:0)

仅当您启用了增量索引时才会发生这种情况。如果您不需要Sphinx完全更新,那么只需在define_index块中关闭增量即可。

如果您 希望您的更新反映在搜索结果中,那么您必须使用此功能,或者切换到延迟增量,这意味着使用延迟作业来处理增量索引。这样可以消除每个Web请求的性能损失,并让Delayed Job为您执行处理。

the documentation中的所有内容都很好,但如果您遇到问题或者某些事情没有意义,请随时发布到he google group