Как понять, почему сервер тормозит
Когда сервер начинает тормозить, самая большая ошибка — сразу метаться между десятком окон и пытаться угадать причину. Намного полезнее пройти по понятному порядку: сначала проверить самые частые причины, потом сузить круг поиска и только после этого лезть в точечную диагностику.
В Wilmo это можно сделать довольно быстро, потому что основные инструменты уже находятся под рукой.
Самые частые причины тормозов
Обычно сервер начинает работать медленно по одной из таких причин:
- закончилось место на диске;
- какой-то процесс перегружает систему;
- контейнер или приложение потребляет слишком много ресурсов;
- сломался или подвис важный сервис;
- логи или временные файлы разрослись слишком сильно;
- проблема не в сервере целиком, а в конкретном приложении.
Порядок быстрой проверки
Если ты не знаешь, с чего начать, используй такой порядок:
- Открой
Disker. - Посмотри, не забит ли диск.
- Затем открой
Диспетчер задач. - Проверь процессы.
- Открой вкладку
Сервисы. - Если нужно, переходи в
PM2илиDocker Менеджер. - После этого смотри логи и конфиги.
Это самый практичный путь, если нужна не теория, а быстрый результат.
Шаг 1. Проверь диск
Недостаток места очень часто ломает сервер сильнее, чем кажется. Из-за этого могут:
- переставать писаться логи;
- падать приложения;
- вести себя странно базы и сервисы;
- ломаться временные операции;
- сбоить деплой и обновления.
Что делать:
- Открой Disker.
- Посмотри вкладку
Overview. - Проверь процент использования диска.
- Если место заканчивается, посмотри
/var, логи и Docker. - При необходимости используй быстрые действия очистки.
Если диск почти забит, это уже может объяснять значительную часть проблем.
Шаг 2. Проверь процессы
Если место в порядке, следующий шаг — процессы.
- Открой Task Manager.
- Перейди на вкладку
Процессы. - Посмотри, нет ли явно тяжёлых или подозрительных процессов.
- Если нужно, включи
Live.
Это особенно полезно, когда тормоза появляются прямо сейчас и ты хочешь увидеть живую картину.
Шаг 3. Проверь сервисы
Если проблема похожа на системную:
- В
Диспетчере задачоткрой вкладкуСервисы. - Найди сервис, связанный с проблемой.
- Проверь, не остановился ли он и не выглядит ли его состояние подозрительно.
Иногда причина не в общей перегрузке, а в том, что просто перестала работать одна важная служба.
Шаг 4. Если проблема в приложении, иди в профильный инструмент
Когда уже понятно, что проблема не во всём сервере, а в конкретном приложении:
- для Node.js смотри PM2 Manager;
- для контейнеров смотри Docker Manager;
- для сайтов и проксирования смотри Менеджер сайтов и Диагностика сайта.
Это помогает не копать не туда.
Шаг 5. Проверь логи и конфиги
Если причина до сих пор не ясна:
- Открой
Files. - Перейди в папки логов или проекта.
- Открой нужные файлы через редактор.
- Посмотри, не появилось ли там явных ошибок.
Часто именно здесь становится ясно, почему приложение тормозит, перезапускается или падает.
Когда проблема почти наверняка в диске
Подозревай диск в первую очередь, если:
- всё работало нормально, а потом стало резко хуже;
- на сервере много логов;
- используется Docker;
- были бэкапы, архивы или крупные загрузки;
- обновления перестали устанавливаться;
- приложение не может писать временные файлы.
Когда проблема почти наверняка в процессе или сервисе
Подозревай процессы и сервисы, если:
- сервер местами "замирает";
- приложение то работает, то нет;
- после перезапуска всё на время оживает;
- проблема выглядит как нестабильная, а не постоянная;
- занятость системы меняется волнами.
Главное правило
Не пытайся сразу угадать точную причину. Сначала собери картину состояния сервера:
- диск;
- процессы;
- сервисы;
- профильный инструмент приложения;
- логи.
Такой порядок почти всегда быстрее, чем хаотичная диагностика.