503 Service Unavailable
5 минут на чтение
Ошибка 503 Service Unavailable
Сервер доступен, но не может обслужить запрос: перегружен, на обслуживании или все воркеры заняты. Часто приходит с заголовком Retry-After.
Частые причины
- Исчерпан пул воркеров приложения — запросы некому обрабатывать.
- Плановые работы: сервер отвечает 503, пока идёт деплой или миграция.
- DDoS или резкий рост трафика — защита отдаёт 503 вместо очереди.
- Лимиты хостинга: превышен лимит CPU или одновременных соединений.
Диагностика
- Посмотрите заголовок Retry-After: он подсказывает, сколько ждать.
- Проверьте загрузку сервера: CPU, память, число процессов приложения.
- Сопоставьте начало ошибки с деплоем, миграцией и рассылкой.
- Проверьте логи балансировщика: сколько запросов не дошли до бэкенда.
Как исправить
| Кто | Действие |
|---|---|
| Владелец сайта | Сообщите подрядчику время начала и регионы; проверьте, не идёт ли обновление сайта или кампания с большим трафиком. |
| Разработчик | Увеличьте пул воркеров, проверьте блокирующие запросы к БД и внешним API, включите очередь. |
| Администратор | Проверьте лимиты хостинга, включите кэш и защиту, при плановых работах — страницу-заглушку с кодом 503 и Retry-After. |
Как не допустить повторения
- Мониторинг с проверкой каждую минуту и подтверждением с трёх точек.
- Алерт на деградацию: рост p95 и 5xx предупреждает раньше, чем появляется 503.
- Проверка после деплоя: сценарий «главная → корзина → оплата».
Частые вопросы
503 — это точно перегрузка?
Не всегда: так же отвечает страница обслуживания и защита от DDoS. Смотрите заголовки и логи.
Сколько времени ждать восстановления?
Ориентируйтесь на Retry-After. Если заголовка нет — типично от 30 секунд до нескольких минут.
Почему 503 видят не все пользователи?
Возможно, проблема на одном сервере за балансировщиком. Проверка из разных точек это покажет.