0

私は現在SphinxThinkingSphinx gem for Railsを使用しています。各展開でSphinxを再起動する必要はありますか?

私はデルタインデックスを使用しています。問題は、各デプロイメントでsearchdプロセスを再開することです。私は1日約5回展開し、毎回検索が下がることは私には受け入れられません。毎回スフィンクスを再起動する必要がありますか?確かに、ダウンタイムを達成する方法はありますか?

ところで、私はEngineyardとこのEYの料理本、Thinking Sphinx 3 Cookbookを使用しています。

それは少し古いですし、それが次の言葉:

ます。また、デプロイにスフィンクスを再起動するようにデプロイフックを追加する必要があります。

スフィンクスの最新の料理本がありますか?

+2

実際に検索インデックスやデータベーススキーマを変更する場合にのみ、sphinxを再起動する必要があると思います。通常のcronジョブでは、スキーマを変更しても、とにかく更新されます。そのページを読んでから、「再展開」ではなく「最初の展開」について話しています。 – barryhunter

+0

はい、これも私が想像することです。しかし、docsページ(上記リンク先)には、「Deployment with Capistrano」というセクションがあり、これは思考のスフィンクスの停止/再開を引き起こします。 – maru

答えて

3

EngineYardのドキュメントは実際には古くなっています。コメントの中でBarryが述べたように、Sphinxの設定を何らかの方法で変更した場合、Sphinxを再起動する必要があります。

Thinking Sphinxのドキュメントでは、いったん再起動を提案しました。これはおそらくEYドキュメントが同じ提案をする理由ですが、Sphinxの共有パスを使用していない場合にのみ適用されます。デプロイ固有のパス(以前のアプローチ)は、Sphinxファイルが各デプロイメントごとに異なる場所にあることを意味するため、最新のリリースディレクトリを使用するには再起動が必要でした。ただし、共有パスとは、Sphinxファイルが特定の配布とは無関係に常に同じ場所にあることを意味し、毎回再起動する必要はありません。

+0

優秀!ありがとう – maru

関連する問題