Вернуться   Форум SAPE.RU > Система SAPE.ru > Вопросы по работе системы

-->
Ответ
 
Опции темы
Старый 04.04.2009, 15:14   #1
Эксперт
 
Аватар для Cyj
 
Регистрация: 01.04.2008
Адрес: Москва
Сообщений: 1,131
Вес репутации: 235
Cyj - прекрасное будущееCyj - прекрасное будущееCyj - прекрасное будущееCyj - прекрасное будущееCyj - прекрасное будущееCyj - прекрасное будущееCyj - прекрасное будущееCyj - прекрасное будущееCyj - прекрасное будущееCyj - прекрасное будущееCyj - прекрасное будущее
По умолчанию Как ограничить жадность сапе-бота?

Подскажите как ограничить жадность сапе-бота?...

Сайт находится на мастерхосте, на виртуальной площадке. Приходит бот начинает грабить страницы, за одну минуту бывает делает по 50-100 запросов.
От такой "наглости" площадка вылетает в 503 ошибку с сообщением в еррор_лог:
[Sat Apr 4 13:28:51 2009] [warn] [client 127.0.0.1] CPU limit of 5.0% has been exceeded (has been used more then 12.3% CPU)
[Sat Apr 4 13:28:51 2009] [warn] [client 127.0.0.1] Resource usage limit has been exceeded, access to arbeninoy.net was temporarily denied
Соответственно ссылки получают статус ERROR.
Такая проблема появилась примерно 2 недели назад.

Раньше практически то же самое было от яндексовского бота, но его удалось "утихомирить" директивой Crawl-delay в robots.txt. С саповским ботом что-то не получается у меня ((
Cyj вне форума   Ответить с цитированием
Старый 05.04.2009, 19:22   #2
Специалист
 
Регистрация: 14.02.2009
Сообщений: 263
Вес репутации: 196
Trimmer - это имя известно всемTrimmer - это имя известно всемTrimmer - это имя известно всемTrimmer - это имя известно всемTrimmer - это имя известно всемTrimmer - это имя известно всем
По умолчанию

В последнее время сапа не грызёт по 20 страниц в сек.
1страница в 1-2с.
можешь
slep(3);
выставить в коде, где 3-ожидание(3 сек).
Trimmer вне форума   Ответить с цитированием
Старый 05.04.2009, 20:06   #3
Мафиози
 
Аватар для Русская мафия
 
Регистрация: 11.09.2008
Адрес: <H1></H1>
Сообщений: 1,174
Вес репутации: 243
Русская мафия - прекрасное будущееРусская мафия - прекрасное будущееРусская мафия - прекрасное будущееРусская мафия - прекрасное будущееРусская мафия - прекрасное будущееРусская мафия - прекрасное будущееРусская мафия - прекрасное будущееРусская мафия - прекрасное будущееРусская мафия - прекрасное будущееРусская мафия - прекрасное будущееРусская мафия - прекрасное будущее
По умолчанию

Цитата:
Сообщение от Trimmer Посмотреть сообщение
можешь
slep(3);
выставить в коде, где 3-ожидание(3 сек).
Гы, притормозить загрузку сайта на 3 сек?
__________________
Как дела?
Русская мафия вне форума   Ответить с цитированием
Старый 05.04.2009, 20:15   #4
Специалист
 
Регистрация: 14.02.2009
Сообщений: 263
Вес репутации: 196
Trimmer - это имя известно всемTrimmer - это имя известно всемTrimmer - это имя известно всемTrimmer - это имя известно всемTrimmer - это имя известно всемTrimmer - это имя известно всем
По умолчанию

Ну ip sape несложно узнать.
Trimmer вне форума   Ответить с цитированием
Старый 05.04.2009, 22:57   #5
Эксперт
 
Аватар для Cyj
 
Регистрация: 01.04.2008
Адрес: Москва
Сообщений: 1,131
Вес репутации: 235
Cyj - прекрасное будущееCyj - прекрасное будущееCyj - прекрасное будущееCyj - прекрасное будущееCyj - прекрасное будущееCyj - прекрасное будущееCyj - прекрасное будущееCyj - прекрасное будущееCyj - прекрасное будущееCyj - прекрасное будущееCyj - прекрасное будущее
По умолчанию

Цитата:
Сообщение от Trimmer Посмотреть сообщение
Ну ip sape несложно узнать.
делать слип по ip?
а как это соотносится с проблемой? - за одну секунду приходт 50 запросов, делаем всем слип на 3 секунды. за следующую секунду приходит еще 50 запросов, опять слип делаем.... и в итоге в памяти висит куча процессов со слипом, но выполнять-то все эти процессы все равно придется.... отсрочить гибель на 3 секунды? )
Cyj вне форума   Ответить с цитированием
Старый 05.04.2009, 22:59   #6
Эксперт
 
Регистрация: 13.05.2008
Сообщений: 7,497
Вес репутации: 386
Апокалипсис - прекрасное будущееАпокалипсис - прекрасное будущееАпокалипсис - прекрасное будущееАпокалипсис - прекрасное будущееАпокалипсис - прекрасное будущееАпокалипсис - прекрасное будущееАпокалипсис - прекрасное будущееАпокалипсис - прекрасное будущееАпокалипсис - прекрасное будущееАпокалипсис - прекрасное будущееАпокалипсис - прекрасное будущее
По умолчанию

А никак не утихомирите, разве временным баном IP, но тогда ерроры получите.
Апокалипсис вне форума   Ответить с цитированием
Старый 06.04.2009, 12:58   #7
Bannеd
 
Регистрация: 17.09.2008
Сообщений: 6,446
Вес репутации: 369
Последний Герой - прекрасное будущееПоследний Герой - прекрасное будущееПоследний Герой - прекрасное будущееПоследний Герой - прекрасное будущееПоследний Герой - прекрасное будущееПоследний Герой - прекрасное будущееПоследний Герой - прекрасное будущееПоследний Герой - прекрасное будущееПоследний Герой - прекрасное будущееПоследний Герой - прекрасное будущееПоследний Герой - прекрасное будущее
По умолчанию

Cyj, скорее всего ваши скрипты грузят БД запросами
если создать индексы в БД то нагрузка заметно снизится
при запросе/поиске/сортировки по неиндексному полю ВСЕГДА (при каждом запросе) просматриваются все строки таблицы не зависимо от частоты запроса
Последний Герой вне форума   Ответить с цитированием
Старый 06.04.2009, 16:02   #8
Эксперт
 
Аватар для Cyj
 
Регистрация: 01.04.2008
Адрес: Москва
Сообщений: 1,131
Вес репутации: 235
Cyj - прекрасное будущееCyj - прекрасное будущееCyj - прекрасное будущееCyj - прекрасное будущееCyj - прекрасное будущееCyj - прекрасное будущееCyj - прекрасное будущееCyj - прекрасное будущееCyj - прекрасное будущееCyj - прекрасное будущееCyj - прекрасное будущее
По умолчанию

Последний Герой, проблема появилась пару недель назад, до этого все нормально работало. Про базу я конечно, подумал в самом начале. Оптимизировал все таким образом, чтобы на странице остался всего один запрос по индексному полую. Ероров заметно поубавилось, но все еще присутствуют. Следующий шаг оптимизации - вывод информации из базы в файлы )
Я склоняюсь к мысли что, база нестабильно работает и ошибки с нагрузкой вызваны работой мускула.
Но вопрос-то не как исправить ерроры, а как ограничить жадность бота.
Cyj вне форума   Ответить с цитированием
Старый 06.04.2009, 16:13   #9
Специалист
 
Регистрация: 14.02.2009
Сообщений: 263
Вес репутации: 196
Trimmer - это имя известно всемTrimmer - это имя известно всемTrimmer - это имя известно всемTrimmer - это имя известно всемTrimmer - это имя известно всемTrimmer - это имя известно всем
По умолчанию

Цитата:
Сообщение от Cyj Посмотреть сообщение
а как это соотносится с проблемой? - за одну секунду приходт 50 запросов
Сильно сомневаюсь, что у сапы многопоточность бота реализована по отношению к скачиванию с одного сайта. Скорее всего идет запрос на страницу, после получения страницы идёт второй запрос на страницу итд.
Надо будет поэксперементировать.
Trimmer вне форума   Ответить с цитированием
Старый 06.04.2009, 17:04   #10
Bannеd
 
Регистрация: 17.09.2008
Сообщений: 6,446
Вес репутации: 369
Последний Герой - прекрасное будущееПоследний Герой - прекрасное будущееПоследний Герой - прекрасное будущееПоследний Герой - прекрасное будущееПоследний Герой - прекрасное будущееПоследний Герой - прекрасное будущееПоследний Герой - прекрасное будущееПоследний Герой - прекрасное будущееПоследний Герой - прекрасное будущееПоследний Герой - прекрасное будущееПоследний Герой - прекрасное будущее
По умолчанию

Cyj, а как часто главная изменяется? если создать cron и кешировать её в файл, чтобы при обращении она всего лишь считывалась с диска - никакой нагрузки на ЦП
Последний Герой вне форума   Ответить с цитированием
Ответ


Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Неуёмная жадность :))) админ Курилка 12 29.09.2008 05:06
Можно ли ограничить длинну текста ссылки Буедорф Вопросы от новичков 2 16.08.2008 17:38
Ограничить кол-во символов! Пусть ВМ ставит предельное значение. poiuyt Пожелания пользователей системы 1 12.08.2008 14:58
Автоматически ограничить длину ссылок можно? trepang Вопросы от новичков 5 26.04.2008 08:41
Ограничить время WAIT (ожидания подтверждения) Lesnik59 Пожелания пользователей системы 3 05.03.2007 12:57


Часовой пояс GMT +3, время: 04:29.