
Сайт став відкриватися повільно, і перша підозра падає на сервер. Здається логічним додати процесорні ядра, оперативну пам’ять або перейти на дорожчий VPS. Проте після зміни конфігурації сторінки іноді завантажуються так само довго.
Причина в тому, що сервер лише виконує команди сайту. Якщо код запускає зайві процеси, база даних довго шукає інформацію, а браузер завантажує десятки важких файлів, потужніша конфігурація не завжди дасть помітний результат. Спочатку варто з’ясувати, на якому саме етапі виникає затримка.
Перевірте, чи вистачає серверу ресурсів
Насамперед подивіться на завантаження процесора, оперативної пам’яті та диска саме в той момент, коли сайт гальмує. Середні значення за добу тут мало про що говорять. Короткий стрибок навантаження може не бути помітним на загальному графіку, хоча саме він спричинив затримку.
Якщо процесор постійно працює майже на межі, оперативна пам’ять закінчується, а система активно використовує swap, конфігурації справді може не вистачати. На проблему з диском вказує велика черга операцій читання та запису.
Інша ситуація, коли ресурси зайняті лише частково, але окрема сторінка все одно формується кілька секунд. Це вже привід перевіряти сам сайт. Сервер має запас, проте певний процес виконується надто довго.
Порівняйте різні сторінки та сайти
Подивіться, чи повільно працює весь сайт. Якщо головна сторінка відкривається нормально, а каталог, пошук або особистий кабінет гальмують, загальної потужності сервера, найімовірніше, достатньо. Проблема пов’язана з операціями, які виконує конкретний розділ.
Так само можна порівняти кілька проєктів, розміщених на одному сервері. Коли затримки виникають лише на одному сайті, шукати причину варто в його коді, CMS, плагінах або базі даних. Серверне перевантаження зазвичай впливає одразу на всі ресурси, що використовують ту саму конфігурацію.
Особливо показова ситуація, коли сайт почав гальмувати після оновлення теми, встановлення модуля або додавання нової функції. Сам сервер не змінився, зате змінилося те, які завдання він отримує.
Подивіться, скільки часу займає відповідь сайту
Важливо розділяти два різні моменти. Перший – час, за який сайт сформував відповідь. Другий – час, потрібний браузеру, щоб завантажити зображення, стилі, скрипти та показати готову сторінку.
Якщо відповідь починає надходити із затримкою, причина може бути в коді або базі даних. Наприклад, сторінка щоразу виконує складні розрахунки, звертається до великої таблиці чи очікує дані від сторонньої системи.
Коли сервер віддає HTML швидко, але сторінка ще довго залишається незавантаженою, потрібно перевіряти її вміст. Великі фотографії, відео, зайві JavaScript-файли, шрифти, онлайн-чати й рекламні віджети можуть додавати секунди навіть за нормально працюючого VPS.
Перевірте запити до бази даних
На невеликому сайті невдалий запит може залишатися непомітним роками. Але база поступово росте, і операція, яка раніше займала частку секунди, починає виконуватися значно довше.
Часто це видно за окремими функціями. Повільно працює пошук, довго відкривається категорія з великою кількістю товарів, зависає фільтрація або формування звіту. Звичайні інформаційні сторінки при цьому не мають проблем.
Причиною можуть бути повторні запити, пошук у великих таблицях без потрібних індексів або спроба завантажити надто багато записів за один раз. Це не виправляється простим додаванням оперативної пам’яті. Спочатку потрібно знайти повільний запит і зрозуміти, чому він займає стільки часу.
Згадайте, що змінювалося перед появою проблеми
Це один із найпростіших способів звузити пошук. Якщо затримки почалися після встановлення плагіна, оновлення CMS, імпорту великого каталогу або підключення зовнішнього сервісу, перевірку варто починати саме звідти.
Модуль може запускати фонові завдання при кожному відкритті сторінки. Сторонній сервіс іноді відповідає із затримкою, а сайт весь цей час чекає. Після оновлення також можуть перестати працювати кешування або сумісність між окремими компонентами.
Тимчасове вимкнення нового розширення часто дає більше інформації, ніж негайний перехід на потужніший тариф.
Коли збільшення ресурсів не допоможе
Якщо на сервері є вільні ресурси, повільно працюють лише окремі сторінки, а затримка виникла після змін на сайті, причина, найімовірніше, не в конфігурації VPS.
У такій ситуації потрібно перевірити журнали помилок, повільні запити до бази, роботу плагінів, кешування та зовнішні підключення. Лише після цього можна оцінити, чи справді сайту потрібен потужніший сервер.
Додавання ресурсів допомагає, коли проєкт упирається в їхню межу. Але воно не виправить запит, який переглядає всю базу, плагін із помилкою або сторінку з десятками мегабайт незжатих файлів. Тому правильна діагностика майже завжди корисніша за апгрейд навмання.