Не так давно я запустил новый сервис по поиску доменных имен. Изначально написал алгоритм, который выдает варианты доменов, при условии, что во всех базах есть ключевое слово.

Однако появилась необходимость реализовать подсказки в том случае, когда пользователь ввел опечатку или неполное слово.

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

Освоение движка заняло буквально один вечер. Все достаточно просто. В этой статье я не буду вдаваться в подробности настройки Sphinx, только отмечу, что для среднестатистического разработчика настройка займет 2-3 часа. Одним из главных преимуществ Sphinx является скорость индексации документов, можно сказать, что делает он это молниеносно.

На выходе я получил классный поиск, пример:

Как видно на скрине, Sphinx можно использовать и для стандартного поиска контента и для навигации.