Черговий раз, перевіряючи навантаження, створювану вашим сайтом на процесор сервера, ви виявляєте зашкалювали графіки і значення від допустимого ліміту обраного тарифного плану. У цей же самий час ви отримуєте лист від хостинг-провайдера з вимогою терміново вжити заходів щодо зниження навантаження або вибрати більш дорогий тарифний план обслуговування.
Здавалося б, ваш сайт або блог ще не має величезної відвідуваності, через яку може створюватися така висока навантаження. І, зрозуміло, у більшості вебмайстрів виникає відчуття паніки і переживання за власний проект. Адже в листі хостинг-провайдер явно вказав на те, що якщо ви не приймете відповідних заходів, то обслуговування сайту буде призупинено.
В першу чергу важливо зрозуміти, що навантаження може створюватися за рахунок двох основних факторів:
- Внутрішні чинники. Слід перевірити сайт на віруси, наявність сторонніх скриптів і кодів, переконатися чи не створюється навантаження через використовуваних вами плагінів і модулів для CMS і так далі;
- Зовнішні фактори. Насправді цих факторів може бути багато, проте, в цьому кейсі ми розглянемо тільки один з них - навантаження, створювану пошуковими роботами.
COSSA рекомендує один з кращих онлайн-курсів нашого ринку з управління складними digital-проектами. Прокачай свої скіли менеджера проекту за програмою одного з найбільших веб-продакшенів Росії.
- Екологічний шлях менеджера
- Реліз-менеджмент: готуємо проекти до запуску
- Вимогливість digital-продюсера
- Аналітика. базові навички
- Як пасти котів: правильне делегування в IT
- Переговорні навички. Частина 1. Цикл продажів
- Переговорні навички. Частина 2. Провокації. Робота з запереченнями
- Оцінка і декомпозиція digital-проектів
- Планування свого часу
- Управляємо дизайнерами. Scrum в дизайні
- Вирівнювання робочого потоку і балансування навантажень
- Навички ведення конструктивного діалогу
- Робота з кадрами: складні питання
- Тонкі моменти (розглянемо по ходу справи)
- Працюємо з типовими документами
Навантаження і логи
- Блог на WordPress;
- Звичайний віртуальний хостинг, який може дозволити собі, практично, кожен.
Як правило, логи бувають двох видів:
- Access_log. У цьому файлі буде міститися інформація про кількість надісланих запитів до вашого сайту - це і ваші користувачі, і роботи пошукових систем, і штучно створені ботнет.
- Error_log. У цьому файлі ви зможете побачити всі внутрішні помилки вашого сайту.
Очевидно, що при навантаженнях від пошукових роботів нам буде потрібно тільки Access_log. Саме в цьому файлі ми зможемо побачити User-Agent, який звертався до нашого сайту. По суті, User-Agent - це десктопні та мобільні браузери користувачів, роботи, в тому числі і «павуки» пошукових систем.
User-Agent основного робота Яндекса в логах відображається як:
User-Agent інших роботів Яндекса ви можете переглянути за посиланням:
User-Agent основного робота Гугла в логах відображається як:
User-Agent інших роботів Гугла ви можете переглянути за посиланням:
У свою чергу, навантаження з боку пошукових систем - це велика кількість запитів до сайту, що здійснюються в одиницю часу, як правило, в секунду. Подібні навантаження не носять цілеспрямованого, деструктивного характеру, однак, ряд заходів щодо захисту прийняти варто. Причому ці заходи не зажадають якихось надзнань.
Нам досить тільки «повідомити» роботам про таймауті звернень. Таким чином, ми говоримо роботам приблизно наступне:
«Звертатися до цього сайту не менше 10 секунд».
Це час ми завжди можемо змінити. Втім, як показала практика, 10 секунд цілком достатньо.
Таймаут для Yandexbot
Для пошукового робота Яндекса таймаут встановлюється у файлі robots.txt. Нам потрібно прописати всього одну директиву:
Як і було зазначено вище, в розглянутому прикладі ми встановили таймаут в 10 секунд. Однак, важливо пам'ятати про те, що після того, як кількість запитів Яндекса і навантаження на процесор сервера зменшаться, цю директиву необхідно видалити. Інакше може вийти так, що робот стане повільніше індексувати сайт, а це погано.
Крім того, робот Яндекса «розуміє» і дробові значення, наприклад, ми можемо поставити період 0,5 секунди, який буде означати звернення Яндексбота до сайту не частіше ніж один раз на півсекунди.
Таймаут для Googlebot
Для Googlebot таймаут задається прямо в інтерфейсі для вебмайстрів - Google Search Console (колиш. Інструменти для веб-майстрів). Зрозуміло, ваш сайт вже має бути доданий в цей інструмент.
Зайшовши в свій кабінет і вибравши необхідний сайт, потрібно натиснути на піктограму шестерінки, а потім пункт меню «Налаштування сайту».
У розділі «Частота сканування» потрібно вибрати пункт «Обмежити максимальну швидкість сканування Google», а потім перемістити повзунок на більш низький таймаут, скажімо, на 111.
Якщо для робота Яндекса після зниження кількості запитів нам потрібно видалити директиву Crawl-delay, то для Гугла цього робити необов'язково. Таймаут автоматично повернеться в початкове положення через 90 днів.
Також слід врахувати, що зміни, внесені в Google Search Consol вступають в силу приблизно через 2-3 дня. Тому не варто дивуватися якщо ви не побачите відразу різкого зниження.