Устранение неполадок
Медленность сайта и ограничения ресурсов
What your hosting plan actually limits, what happens when you reach each limit, and how to work out whether a slow site is a resource problem or a code problem.
Что ваш тарифный план действительно ограничивает, что происходит при достижении каждого ограничения и как определить, является ли медлительность сайта проблемой ресурсов или проблемой кода.
"Мой сайт работает медленно" и "мой сайт исчерпал что-то" ощущаются одинаково снаружи и практически ничего общего не имеют внутри. Это руководство разделяет их: сначала что ограничения действительно собой представляют, затем как диагностировать фактическую медлительность.
Во-первых, медленно или сломано?
Медленно означает, что страницы загружаются, в конечном счёте. Сломано означает, что они не загружаются.
Если вы получаете страницы ошибок вместо медленных страниц, остановитесь здесь и перейдите к HTTP коды ошибок. Ошибка 500, 502 или 504 имеет конкретную причину и конкретное решение, и ни одно из них не является "обновить тариф".
Если сайт недоступен, а не медленный, перейдите к Веб-сайт не загружается.
Что ваш тариф действительно ограничивает
Четыре вещи, и стоит знать, какая есть какая, потому что они ведут себя по-разному при достижении.
Хранилище. Сколько дискового пространства используют ваши файлы и базы данных. Измеряется ежедневно.
Полоса пропускания. Сколько данных ваши посетители загружают за месяц.
Количество сайтов. Сколько отдельных сайтов вы можете запустить на тарифе.
Доступ к CDN. Доступен ли CDN вообще и сколько трафика может обслуживаться с граничного узла каждый месяц.
Ваши конкретные лимиты зависят от вашего тарифа. Текущие цифры для каждого тарифа показаны рядом в разделе Биллинг, затем Изменить тариф, это также честное место для сравнения вместо числа, введённого в статью помощи, которое может измениться. Смотрите Обновление вашего тарифа.

Что происходит при достижении каждого ограничения
Это то, о чём волнуются люди, и ответы менее драматичны, чем ожидается.
Хранилище. Использование диска измеряется ежедневно и отображается на странице обзора сайта. По мере увеличения вы получаете предупреждение insight, которое усиливается по мере приближения к полному. Смотрите Insights.
Количество сайтов. Это ограничение применяется в момент создания. Попытка создать сайт сверх лимита вашего тарифа выдаёт чёткое сообщение о том, что тариф заполнен, с опцией обновить или добавить ещё один тариф. Ничего существующего не затрагивается.
Доступность CDN. Включение CDN на тарифе, который его не включает, возвращает простое сообщение "не входит в ваш тариф" со ссылкой на обновление. Нет частичного или деградированного режима. Смотрите Включение CDN.
Полоса пропускания CDN. Это ограничение имеет реальное, хорошо разработанное поведение, которое стоит понимать:
- На уровне 80% от вашего ежемесячного лимита граничного узла вы получаете письмо.
- На уровне 100% граничный узел приостанавливается на остаток месяца. Ваш сайт остаётся в сети и продолжает работать нормально, прямо с источника, он просто больше не кэшируется на граничном узле.
- Обслуживание граничным узлом возобновляется автоматически в начале следующего месяца.
- Вас никогда не будут выставлять счета сверх лимита без вашего ведома.
Таким образом, наихудший сценарий заключается в том, что ваш сайт становится таким же быстрым, как раньше, когда вы включили CDN. Ничего не переходит в автономный режим.
Управляемая полоса пропускания WordPress и WooCommerce работает как мягкий лимит. Вы получаете уведомление по мере приближения к нему и снова при его превышении, и любой избыток обрабатывается как лимитированный перерасход, а не отключение сайта.
Превышение лимита хранилища или полосы пропускания не приостанавливает ваш сайт. Приостановка на этой платформе является состоянием биллинга, а не ресурсным состоянием. Смотрите Аккаунт приостановлен и Платёж не прошёл.
Что не ограничено в рамках тарифа
Две вещи, которые люди ожидают найти и не найдут.
Нет квоты CPU или памяти на сайт на тарифах веб-хостинга. Ваш тариф не выделяет вам определённое количество ядер.
Вы не конкурируете с соседними сайтами за ёмкость PHP. Каждый сайт работает в собственном изолированном пуле рабочих процессов PHP. Загруженный соседний сайт не может исчерпать рабочие процессы, которые нужны вашему сайту. Эта изоляция реальна, и поэтому "соседний сайт замедляет мой" почти никогда не является объяснением на этой платформе.
Что применяется, так это лимит на один запрос: сколько памяти может использоваться одним запросом и сколько секунд он может выполняться. Это вы можете установить. Смотрите Расширения и параметры PHP.
Где просмотреть ваше использование
- Хранилище, на странице Обзор сайта.
- Полоса пропускания CDN, также на странице обзора после включения CDN и на вкладке Kapsule CDN сайта.
- Предупреждения, через Insights и по электронной почте. Смотрите Insights.
- Минуты сборки и полоса пропускания для проектов Orbit, на странице использования Orbit. У Orbit есть свои совершенно отличающиеся лимиты, включая лимит расходов. Смотрите Лимиты тарифа Orbit и Лимиты расходов Orbit.
Как действительно сделать медленный сайт быстрее
В порядке возврата инвестиций. Работайте вниз по списку, а не прыгайте в конец.
1. Включите кэширование
Самый большой выигрыш, всякий раз. Обслуживание сохранённой копии страницы на несколько порядков дешевле, чем её перестроение для каждого посетителя.
Перейдите в Веб-сайты, сайт, WordPress, затем Кэширование. Кэширование объектов доступно на всех WordPress тарифах, а кэширование полной страницы на управляемых тарифах. Смотрите Кэширование сайта.
Учтите, что некоторые пути намеренно никогда не кэшируются: страницы администратора, вход, корзина, оформление заказа и страницы аккаунта. Кэширование страницы оформления заказа показало бы одному клиенту корзину другого клиента, поэтому это не настраивается и не должно быть.
2. Включите CDN
Кэширование помещает копию в одно место. CDN размещает её близко к вашим посетителям. Наибольший эффект, если ваша аудитория находится не в той же стране, что и ваш сервер. Требует подходящего тарифа и собственного пользовательского домена. Смотрите Включение CDN.
3. Перейдите на более новую версию PHP
Реальное, измеримое улучшение без каких-либо работ. Сначала протестируйте на staging. Смотрите Изменение версии PHP.
4. Исправьте ваши изображения
Постоянно самое большое на медленной странице. Фото, прямо с телефона, может быть несколько мегабайт и отображаться шириной 400 пикселей. Переразмеровайте перед загрузкой и используйте современный формат.
5. Проверьте ваши плагины
Каждый плагин, который выполняет работу при каждом запросе, стоит вам при каждом запросе. Отключайте по одному за раз и измеряйте. Удаляйте то, что вы не используете, вместо того чтобы оставлять отключённым. Смотрите Плагины WordPress.
6. Найдите то, что действительно медленно
Остановитесь гадать и измеряйте:
- Вкладка APM на сайтах WordPress показывает, какие запросы медленные. Смотрите Производительность сайта.
- Журнал медленных запросов, доступный из инструментов здоровья WordPress, показывает, какие запросы к базе данных являются проблемой.
- Журнал медленных PHP фиксирует то, что запрос выполнял, когда он занял слишком много времени.
- Журналы ошибок показывают всё, что работает неправильно и повторяется. Смотрите Журналы ошибок.
7. Затем и только затем рассмотрите больше ресурсов
Если кэширование включено, CDN включён, PHP текущий, изображения в порядке, и профайлер говорит, что работа действительно необходима, то вы переросли тариф и обновление является правильным вызовом. Смотрите Обновление вашего тарифа.
Выполнение этого шага в первую очередь - это как люди заканчивают оплатой большего за сайт, который всё ещё медленный, потому что неоптимизированный сайт на большом тарифе - это неоптимизированный сайт.
Когда пришло время для сервера
Общий хостинг - правильный ответ для большинства сайтов. Перейдите на облачный или выделенный сервер, когда вам нужно программное обеспечение, которое платформа не предоставляет, доступ root, нестандартные сервисы или предсказуемую выделенную ёмкость для чего-то действительно сложного. Смотрите Облачные серверы и Выбор архитектуры.