рубин на рельсах - ультрасфинкс - PullRequest
1 голос
/ 13 апреля 2010

Ruby on Rails - UltraSphinx

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

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

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

Спасибо

Ответы [ 2 ]

1 голос
/ 15 мая 2010

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

is_indexed :fields => ['column1', 'column2'], :delta => true
  1. Запуск демона ultrasphinx:

    грабли ультрасфинкса: демон: старт

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

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

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

1 голос
/ 13 апреля 2010

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

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

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

...