Создание поисковика, или Автоматизация Яндекс.Сервера

в 10:15, , рубрики: Байнет, Веб-разработка, поисковик, Поисковые машины и технологии, поисковые системы, яндекс, метки: , ,

Я из Беларуси, здесь крупнейшим интернет-провайдером является byfly. Этот провайдер предоставляет своим пользователям бесплатный доступ ко всем сайтам, которые хостятся внутри страны (гостевым ресурсам).

У каждого в арсенале был набор файликов со ссылками на бесплатно доступные ресурсы. Так пришла идея создания поисковика по этим ресурсам и уже в августе 2009 г. его увидели первые пользователи. Посещаемость довольно быстро росла и, на пике популярности, ресурс посещало порядка 34 000 уникальных пользователей в сутки.

Создание поисковика, или Автоматизация Яндекс.Сервера

В сердце поисковика работает Яндекс.Сервер. Вот так выглядит его панель управления:
Создание поисковика, или Автоматизация Яндекс.Сервера

Сразу стало понятно, что имея только этот набор функциональности (3 кнопки — это вкл/откл поиск, вкл/откл индексацию и откл Я.Сервер), вменяемый поисковик не сделать.
Поэтому пришлось его немного доработать и получилось так:

Создание поисковика, или Автоматизация Яндекс.Сервера

Было реализовано множество дополнительных функций, таких как:

  • разбиение индекса на ресурсы и создание для каждого из них своей маски и правил индексации;
  • система автоматического обновления индексов;
  • система отслеживания злоупотреблений со стороны вебмастеров;
  • система автоматической очистки индекса от мусорных документов;
  • отдельные поиски по видео и рефератам;
  • система мониторинга работоспособности…

Когда администратор в новой панели управления совершает какое-либо действие (например, хочет удалить сайт из индекса), система сгенерирует конфигурационный файл с необходимыми параметрами:

function cfg_file_generate($adr, $option, $timeout, $delay, $rules) {
	global $cfg_useragent;
$cfg = "<Webds>
	$rules
	<IndexedArea>
		HttpPrefix http://$adr
		Options $option
		<HttpOptions>
			Timeout  $timeout
			Delay    $delay
			<Headers>
				User-Agent: $cfg_useragent
			</Headers>
		</HttpOptions>
	</IndexedArea>
</Webds>";
return $cfg;
}

После чего отправит запрос на обновление индекса в стандартную панель управления Яндекс.Сервера. Переиндексация происходит по правилам, указанным в конфигурационном файле. Администратор увидит результат операции в доработанной панели управления. Все манипуляции осуществляются в фоне через ajax запросы.

В пик популярности в сутки было: более 300 000 поисковых запросов, ~34 000 уникальных пользователей, в поисковом индексе более 2 000 сайтов. Для всех нужд всегда с лихвой хватало аппаратного VPS Intel 2.33 (1 ядро), 1 Гб RAM.

Пользователи сами на энтузиазме стали разрабатывать различные дополнения для браузеров с поиском и даже desktop-версии. Другие же, так сильно хотели попасть в поисковой индекс, что даже угрожали :-)

Позже, byfly упразднил бесплатный доступ и популярность постепенно стала сходить на нет. Сейчас держится на уровне 3 000 уникальных пользователей в сутки.

search.pusk.by изначально рассчитывался как краткосрочный проект. Я оценивал время его жизни в 1 год, но он продержался дольше :-)

Создание поисковика, или Автоматизация Яндекс.Сервера

Автор: Trimirys


* - обязательные к заполнению поля


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js