Режимы исполнения команд поисковой утилитой

    Обычный режим работы консольной утилиты - запуск из командной строки и набором опций (см. примеры). В большинстве случаев для исполнения запроса программа загрузит словарь, список индексов и развернет в оперативной памяти достаточно сложные структуры. Исполнение нескольких последовательных команд в результате приводит к многократной загрузке словаря, например в случае поиска по индексированным документам, когда пользователь делает несколько уточняющих запросов.

Интерактивный режим

Чтобы исключить необходимость повторной загрузки словаря, утилита допускает специальный интерактивный режим. В нем программа выдает на консоль собственное приглашение на ввод команд, выполняя очередную команду после нажатия клавиши Enter. Для активизации этого режима введите

faind -console

Если поисковая система скомпилирована с поддержкой многопоточности, то можно активизировать режим асинхронной интерактивности, в котором после ввода Enter команда направляется на исполнение в отдельном треде, и пользователю тут же предлагается ввести следующую команду:

faind -aconsole

Данный режим предназначен для тестирования многопоточного режима индексатора и поисковика. Не забывайте, что для подавления экранного вывода при выполнении команд, например при индексировании, можно использовать команды -verbose=off и -showcontext=false.

Веб-интерфейс

Еще один режим работы - веб-сервер. В нем утилита работает как простой веб-сервер, генерируя страницы для ввода команд и с результатами исполнения этих команд. Активизация этого режима:

faind -httpd ip port

Где ip - адрес сетевого интерфейса, который будет слушать сервер (например 127.0.0.1 для локального доступа), port - номер соответствующего порта (например, стандартный для веб-серверов 80). Настраивая сервер на прослушивание соответствующего сетевого интерфейса, можно открыть доступ к поисковику с удаленных компьютеров, которым нужен только обычный веб-браузер.

веб-интерфейс поискового движка

Допустим, веб-сервер запущен на порту 2080 для loopback-интерфейса:

faind -httpd 127.0.0.1 2080

Ввод в браузере адреса http://localhost:2080/index.html отобразит главную страницу со ссылками на несколько страниц:

http://localhost:2080/admin.html - административная панель, на которой можно отправлять движку произвольные команды.

http://localhost:2080/query.html - панель запросов, напоминающая главную страницу поисковых систем всемирной паутины:

Страница запросов поискового сервера

http://localhost:2080/info.html - служебная информация о поисковом движке.

Техническая реализация веб-интерфейса основана на open-source библиотеке SHTTPD и на возможности поискового движка параллельно исполнять несколько запросов (начиная с версии 3).

Через веб-интерфейс выполняется кооперация нескольких движков, работающих на разных машинах, с помощью команды -engine и специального плагина.

Генерируемую веб-сервером страницу запросов и результатов поиска можно кастомизировать с помощью своего шаблона.

Пакетный режим

Команда

faind -batch имя_текстового_файла

выполняет последовательно команды движка, перечисленные в указанном текстовом файле. Файл может быть в кодировке utf-8. Выполнение команд продолжается до их исчерпания либо до возникновении ошибки.

Дополнительные материалы

Консольная поисковая утилита

Процедурный API поисковой системы

Синтаксис поисковых запросов

Синтаксис определения области поиска

Где скачать поисковую систему и SDK

Скачать SDK поисковой системы с примерами и другие компоненты можно здесь поисковая система

  © Mental Computing 2010
изменено 07-Jun-10