Управление sphinx для нескольких веб-сайтов

У меня есть несколько сайтов, использующих поисковые индексы Sphinx, которые необходимы для их работы. Однако это оказывает огромное влияние на объем индексации, которую мне приходится выполнять на моем сервере. В настоящее время у меня есть задание cron, которое запускается каждые 24 часа для переиндексации моей базы данных. Это должно запускать примерно 15 различных источников, которые в среднем содержат около 100 000 строк в моей базе данных. Так что довольно массивно...

В последнее время у меня не было проблем с запуском indexer --all --rotate в моем sphinx.conf, однако я только что обнаружил, что мои файлы журналов (за последние 6 месяцев) выросли более чем на 10 ГБ. В частности, это файлы /var/log/query.log и /var/log/searchd.log.

Это явно не лучшая ситуация. Поэтому я надеялся, что я смогу разделить наборы индексов, которые у меня есть, между моими веб-сайтами, чтобы мне не приходилось делать такой гигантский вызов в одном мощном файле sphinx.conf.

По крайней мере, таким образом я могу быть гибким с моей cron-индексацией, поскольку сайт 1 может не нуждаться в такой индексации, как, например, сайт 3. Я также могу разделить файлы журнала таким образом.


person Hemm K    schedule 27.07.2015    source источник


Ответы (1)


Вам НЕ НУЖНО использовать --all, вместо этого вы можете просто назвать индексы, которые вы хотите вращать, в командной строке.

Что касается больших лог-файлов, logrotate — ваш друг.

(рекомендовал бы это вместо попытки запустить несколько экземпляров sphinx, хотя, возможно, быстро становится грязным)

person barryhunter    schedule 27.07.2015