私は自分のアプリケーション検索エンジンに取り組んでいます。この検索エンジンは、全文検索に sphinx を使用しています。
インデックスの更新を担当する cron ジョブを作成しました。現在、1 日に 1 回実行するように設定されています。
ここで、このcronで何をしていますか。
indexer --all --rotate > sphinx.log
検索モジュール全体がダウンし、クライアント アプリケーションにこのエラーが表示されることがあります。
Notice (1024): Search query failed: connection to 127.0.0.1:9312 failed (errno=111, msg=Connection refused) [APP/models/behaviors/sphinx.php, line 134]
そしてsphinx.logでこのエラーを見つけました
FATAL: failed to lock /usr/local/sphinxsearch/delta_users/delta_users.spl: Resource temporarily unavailable, will not index. Try --rotate option.
9312 が接続を拒否されたようです。おそらく、リソース ファイルが他のプロセスによって使用されているためです。これはまだランダムな動作です。
環境は Linux (ubuntu) にデプロイし、アプリケーションは Cakephp で作成します。sphinx サービスの再起動が停止する原因を特定しようとしています。これが sphinx 構成の問題なのか、I/O または mysql の問題なのかはわかりません。デルタインデックスが問題を引き起こしているだけだと思います。
前もって感謝します。