0

我目前使用SphinxThinkingSphinx gem for Rails。我是否真的需要在每次部署时重新启动Sphinx?

我正在使用通过cron进行计划索引的delta索引。问题是,对于每个部署,我重新启动searchd进程。我每天部署5次左右,每次我搜索都会停下来,这对我来说是不可接受的。每次都需要重新启动狮身人面像吗?当然,有一种方法可以实现不停机?

顺便说一下,我使用Engineyard和EY的这个特别的食谱,Thinking Sphinx 3 Cookbook

这是一个有点老了,它说以下内容:

您还需要添加一个部署钩重启狮身人面像上部署。

任何想法?是否有更新的狮身人面像食谱?

+2

如果您实际更改搜索索引或可能数据库架构,会认为您只需重新启动sphinx。使用常规的cronjob,即使更改架构,也会进行更新。从阅读该页面来看,它大部分是关于“首次部署”,而不是“重新部署”。 – barryhunter

+0

是的,这就是我想象的。但是在文档页面上面(链接上面),有一个部分有“Capistrano部署”,它引发思考狮身人面像停止/重新启动。 – maru

回答

3

EngineYard文档确实已过时。正如Barry在评论中提到的那样,如果您以某种方式更改了狮身人面像配置,则只需重新启动Sphinx即可。

Thinking Sphinx文档曾经建议重新启动 - 这也许是为什么EY文档会提出相同的建议 - 但这只适用于您未使用Sphinx的共享路径。特定于部署的路径(以前的方法)意味着Sphinx文件对于每个部署都处于不同的位置,因此需要重新启动才能使用最新的版本目录。然而,共享路径意味着Sphinx文件始终位于同一位置,与特定的部署无关,因此您无需每次都重新启动。

+0

优秀!感谢那 – maru

相关问题