
Уявіть: ви запустили рекламну кампанію або крутий пост в Instagram, і за пів години на сайт заходить 1000 людей замість звичних 50. Ви радієте, але… сайт починає гальмувати, видає помилку 508, а потім взагалі падає. Потенційні клієнти зникають. Чи знайомо? Сьогодні розповім, як перевірити, чи витримає ваш сайт «свято», і що з цим робити.
Що таке відмовостійкість і чому це важливіше за швидкість (хоча вони друзі)
По-перше, давайте одразу розділимо два поняття. Швидкість — це як швидко сторінка показується одному користувачеві. Відмовостійкість — це здатність сайту працювати стабільно під час різкого напливу людей. З іншого боку, якщо ваш сайт повільний сам по собі, то під навантаженням він просто «ляже» миттєво.
Простий приклад з життя: уявіть ресторан, де страви смачні, але кухня маленька. Коли приходить одна сім’я — обід за 20 хвилин. А коли раптово заходять 100 гостей — ви чекаєте дві години або йдете геть. Ваш сайт — це та сама кухня.
Але є нюанс: Google дивиться не лише на час завантаження, а й на поведінку людей. Якщо сайт падає або довго вантажиться під час акції — ви втрачаєте бюджет, позиції в пошуку та довіру.
Як перевірити, чи ваш сайт тримає удар? Три безкоштовних способи (навіть для новачків)
Перш ніж вкладати гроші в потужний хостинг, варто провести простий тест. Ось що я раджу робити кожному, хто планує рекламу.
- Інструмент Loader.io (безкоштовно до 5000 запитів)
Ви вводите адресу свого сайту, задаєте кількість умовних відвідувачів (наприклад, 200 за хвилину), і сервіс імітує атаку. Якщо середній час відповіді більший за 2 секунди або з’являються помилки — справа кепська. - Apache JMeter (безкоштовно, але складніше)
Потужна штука, яку використовують професіонали. Можна записати сценарій: «людина заходить на головну → додає товар у кошик → оформлює замовлення». Під час напливу ви побачите, де саме ламається процес. - Тестові пости в соцмережах
Лайфхак: запустіть за день до великої акції пост із конкурсом або вірусним відео, але з маленьким бюджетом на таргет (300 грн). Подивіться в Google Analytics, як змінюється час завантаження при +30% відвідувачів. Це не точна наука, зате живий приклад.
Особистий досвід: один мій знайомий з магазином дитячих іграшок не перевірив сайт перед «Чорною п’ятницею». У підсумок — 4 години простою під час піку продажів. Він втратив близько 120 000 грн виручки. І все через те, що хостинг на 5$ на місяць не впорався.
5 ознак, що ваш сайт «сиплеться» під навантаженням навіть зараз
З іншого боку, як зрозуміти проблему без спеціальних тестів? Придивіться до поведінки вашого ресурсу.
- Панель керування хостингом червоніє — показник CPU зашкалює за 90% навіть у звичайний вівторок удень.
- Кеш не рятує — ви ввімкнули кешування, але сайт однаково гальмує. Це означає, що проблема в базі даних або занадто важких скриптах.
- Велика кількість помилок 500 — їх можна подивитись у звітах Search Console. Якщо вони з’являються періодично — хостинг перенапружений.
- Плагіни оптимізації сваряться — наприклад, ви встановили три кеш-плагіни (W3 Total Cache, WP Rocket, Litespeed), і вони блокують одне одного. Це частіше зустрічається на WordPress.
- Використання «безлімітного» хостингу — правда в тому, що безлімітний — значить безлімітний лише на папері. Як тільки ваш сусід по серверу запускає парсинг, ви летите.
Як швидко підготувати сайт до напливу клієнтів? Покроковий чек-лист
Якщо ви прочитали до цього місця та з жахом зрозуміли, що ваш сайт — та сама кухня в ресторані — не панікуйте. Ось що можна зробити за добу до запуску реклами.
- Крок 1. Змініть хостинг на VPS або Cloud
Звичайний shared-хостинг для бізнесу з рекламою — це ризик. VPS від 500 грн/міс (наприклад, від HOSTiQ або TimeWeb) дасть гарантовані ресурси. Cloud — ще краще, але дорожче. - Крок 2. Увімкніть кешування сторінок «на рівні сервера»
Попросіть техпідтримку налаштувати кеш, який зберігається в RAM (наприклад, Redis або Memcached). Тоді ваш сайт віддаватиме готову HTML-сторінку замість того, щоб щоразу генерувати її заново. - Крок 3. Використовуйте CDN
Content Delivery Network (Cloudflare, Bunny.net) розподіляє навантаження по 100+ серверах у всьому світі. Крім того, безкоштовний тариф Cloudflare вже рятує від дрібних DDoS-атак. - Крок 4. Стисніть всі зображення та об’єднайте CSS/JS
Тут допоможе той самий WP Rocket або ShortPixel. Бо 5 мегабайт на одній картинці — це вбивця бюджету. - Крок 5. Напишіть красиву сторінку «обслуговування»
Якщо вже найгірше сталось — нехай людина не бачить помилку 500, а бачить: «Зачекайте 5 хвилин, ми вже додаємо нові знижки». Так у вас є шанс повернути покупця.
Висновок: скільки ж має витримувати ваш сайт?
Ось вам проста формула від мене, як колись інженера з навантажувального тестування. Візьміть пікову кількість людей, яку ви очікуєте за день акції. Розділіть на 12 годин (якщо пік — денний час) або на 4 години (якщо це флеш-розпродаж). Потім помножте на 1,5 (запас). Отримаєте приблизну кількість за хвилину.
Приклад: очікуєте 3600 відвідувачів за день. 3600 / 12 = 300 осіб за годину. 300 / 60 = 5 осіб за хвилину. Але з запасом — 8 осіб за хвилину. Якщо ваш сайт витримує 10–15 за хвилину на тесті — ви готові до свята.
Але головне правило — регулярно перевіряйте свій сайт. Особливо після кожного оновлення плагінів, теми або CMS. Бо одна маленька оновленна бібліотека може «покласти» сервер.
Якщо хочете, щоб я розібрав ваш кейс — пишіть у коментарях. Розкажу, з чого почати безкоштовно.