Sphinx s'exécute en tant que service sur Windows Server 2003
J'ai également le cronjob ff en cours d'exécution toutes les 2 min pour mettre à jour l'index:
C:sphinxbinindexer.exe -c C:sphinxbinsphinx.conf --rotate delta
et toutes les 12 h:
C:sphinxbinindexer.exe -c C:sphinxbinsphinx.conf --rotate --all
Cependant, la tâche a été exécutée tous les 1 m, mais mon site Web n'a pas été mis à jour. La réindexation a réussi.
La seule mise à jour sur le site Web consiste à faire redémarrer mon service.
Quel pourrait être le problème ici? Je ne pouvais pas créer de tâche cron pour redémarrer le service juste pour la mise à jour. Puisque cela pourrait sérieusement affecter les opérations de recherche
Réponses:
2 pour la réponse № 1Essayez de changer le réglage preopen_indexes
à 0 (zéro).
J'ai eu le même problème. Si vous exécutez le service searchd en tant que débogage, vous pouvez voir qu'il génère une erreur "Tube cassé". Cela est dû au fait que les fichiers d'index du processus sont toujours ouverts. Si vous définissez le preopen_indexes
à 0, il ne s’ouvrira que si vous effectuez une recherche (oui, c’est un peu plus lent que de l’ouvrir une fois)
J'ai trouvé la réponse sur le forum Sphinx, http://sphinxsearch.com/forum/view.html?id=572