Зменшення навантаження на cpu сервера сайту

Зменшення навантаження на cpu сервера сайту

Одного разу на Вашу пошту може прийти лист від хостинг-провайдера приблизно такого змісту:

При покупці хостингу для свого сайту потрібно звертати увагу на кількість ресурсів, яке виділяється для певного тарифного плану: дисковий простір, максимальна кількість сайтів і БД, панель управління сервером. На додаток до цього для кожного тарифу виділяється певний ліміт на використання CPU. який спочатку неможливо прорахувати під потреби бажаного хостингу.

Причини навантажень на CPU сервера

Причин може бути значна кількість, зупинимося на найбільш очевидних:

Блокування спам-ботів і їх IP ми розглянемо більш детально в кінці цієї статті.

Як визначити причину навантажень на CPU сервера

В панелі управління хостингом повинна міститися інформація про максимальну середньодобовому навантаженні на центральний процесор у відсотках і докладна щоденна статистика, яка дозволить подивитися динаміку навантажень за останні кілька днів і виявити причину навантажень. Якщо у Вас з'явилися труднощі з пошуком даної статистики, то можна звернутися до служби підтримки хостинг-провайдера.

Загальний перелік дій при великих навантаженнях на CPU сервера

Насамперед потрібно просканувати файли вашого сайту на наявність шкідливого коду, який може створювати дірки в системі, а також додаткове навантаження на ресурси сервера. Використовуємо антивірус свого хостинг-провайдера або, наприклад, безкоштовний антивірус "Manul" від команди Я ндекс.

Наступним етапом дій буде блокування спам-ботів і ботів різних сервісів. Розглянемо його більш детально!

Таймаут для пошукових роботів і блокування спам-ботів

Для зниження навантаження на CPU сервера від ботів популярних пошукових систем (Я ндекс. Google або Bing), потрібно через файл robots.txt використовувати директиву Crawl-delay для установки таймаута звернення роботів до Вашого сайту.

Для окремих ботів:

Відразу для всіх ботів:

Для робота Google настройки вносяться через Гугл-вебмастер. Налаштування в robots.txt працювати не будуть!

Блокування небажаних роботів

Спам-боти і боти різних сервісів, таких як MegaIndex.ru, можуть обходити виставлений в файлі robots.txt таймаут, тим самим швидко і стрімко навантажуючи сервер величезною кількістю запитів. У цьому випадку через файл .htaccess робиться повне блокування небажаних роботів:

Замість MegaIndex.ru, MJ12bot, BLEXBot прописуєте імена ботів, які створюють навантаження (при необхідності копіюємо і вставляємо записи).

NC - означає не враховувати регістр букв; OR - означає "або така умова".

Останній рядок RewriteRule ^ (. *) $ - [F, L] забороняє доступ всіх вищеописаних ботам до сайту.

Важливо! У передостанній сходинці коду не повинно бути записи [OR]