Ответ на вопрос элементарный:
В robots.txt пишем нечто подобное:
User-agent: Yandex
Crawl-delay: 10
Если сервер сильно нагружен и не успевает отрабатывать запросы на загрузку, воспользуйтесь директивой Crawl-delay. Она позволяет задать поисковому роботу минимальный период времени (в секундах) между окончанием загрузки одной страницы и началом загрузки следующей.
В целях совместимости с роботами, которые не полностью следуют стандарту при обработке robots.txt, директиву Crawl-delay необходимо добавить в группу, которая начинается с записи User-Agent, непосредственно после директив Disallow и Allow).
Поисковый робот Яндекса поддерживает дробные значения Crawl-Delay, например, 0.5. Это не гарантирует, что поисковый робот будет заходить на ваш сайт каждые полсекунды, но позволяет ускорить обход сайта.
User-agent: Yandex
Crawl-delay: 2 # задает таймаут в 2 секунды
User-agent: *
Disallow: /search
Crawl-delay: 4.5 # задает таймаут в 4.5 секунды
Директива сделана для того что бы снимать нагрузку от бешенства Яндекса, которое судя по всему не имеет пределов.
Знаю, некоторые ждут бота Яндекса как ману небесную, а я тут пишу как его остановить, придержать.. Да существуют такие проблеммы. Миллионеры тоже мучаються и не знают куда девать деньги =).