Рубин на рельсах - ультрасфинкс

Ruby on Rails - УльтраСфинкс

Привет, ребята, я использую Ultrasphinx для поиска.

У меня вопрос: у меня в фоновом режиме работает "rake ultrasphinx: daemon: start". Теперь, если у меня есть задание cron, которое регулярно выполняет "rake ultrasphinx: index", или демон позаботится об индексации при создании нового объекта.

Пожалуйста, дайте мне знать. Это своего рода чрезвычайная ситуация.

Спасибо

2 ответа

Решение

Вам нужно будет запустить задание cron, чтобы регулярно обновлять ваш индекс. Тем не менее, вы можете запустить грабли ultrasphinx:index:delta обновлять только дельта-индекс, который содержит недавно измененные записи.

Время от времени вы можете также захотеть объединить ваш дельта-индекс с вашим основным индексом, используя задачу ultrasphinx:index:merge

Надеюсь это поможет.

Добавьте это в свою модель, если вы хотите использовать дельта-индексацию:

is_indexed :fields => ['column1', 'column2'], :delta => true
  1. Запустите Ультрасфинкс:

    грабли ультрасфинкса: daemon: старт

  2. Добавьте к вашему CRON(я запускаю его каждые 10 минут, но окончательное решение остается за вашим приложением): rake ultrasphinx:index:delta

  3. Вам нужно будет запускать rake ultrasphinx: index: main один раз в день, чтобы переместить содержимое дельты в основной индекс.

Источник: официальная документация.

Другие вопросы по тегам