База знань / Хостинг / Помилки Resource Limit Is Reached, 500 та 503

in Хостинг

Короткий опис

Дана помилка сповіщає про перевищення одного з лімітів вашого тарифу. Ви можете подивитись статистику використання ресурсів, яка доступна в хостинг-панелі і показує використання ресурсів та їх граничні величини.

В панелі ISPManager статистика доступна у лівому меню знизу в розділі Resource Usage, у панелі Plesk статистика доступна на головній сторінці панелі у правому меню в розділі Resource Usage:

Причиною помилки 508 зазвичай є перевищення максимально допустимої кількості одночасно працюючих процесів Apache в рамках хостинг-аккаунта (EP або Entry Process Limit). Опис помилки є в офіційній документації CloudLinux за посиланням . При кожному запиті до динамічного контенту створюється новий процес, який обробляє цей запит, і лічильник процесів в хостинг-акаунті збільшується на одиницю. Коли процес виконує всі необхідні дії, він завершується, і лічильник процесів зменшується на одиницю. Максимальна кількість процесів в хостинг-акаунті обмежена. Коли процеси створюються швидше, ніж завершуються, черга процесів забивається і досягається ліміт на максимальне число процесів. 

Якщо ліміт досягнутий – сервер не може створити нові процеси і буде повертати помилку 508 для всіх процесів понад ліміт. Помилка буде повертатися до тих пір, поки черга процесів не розвантажиться і не з’являться вільне місце для нових процесів.

Наприклад, дане зображення показує, що ресурс “EP” періодично використовується по максимуму, і у випадку спроби використати його трохи більше – ви будете отримувати вище згадану помилку (скріншот для панелі ISPManager):

Screenshot_1

Аналогічна статистика є в акаунтах, що працюють з панеллю Plesk:

Щодо розуміння самих ресурсів:

– Обмеження на використання процесору сервера (CPU).

– Обмеження на використання фізичної оперативної пам’яті (pMEM) . Кожен скрипт/сторінка потребує певного об’єму оперативної пам’яті для виконання/завантаження. Якщо таких скриптів одночасно багато працюють, та якщо якийсь з них потребує дуже багато цього ресурсу в одиницю часу – ресурс швидко вичерпується.

– Обмеження на кількість запущених процесів (EP) . Простими словами – кількість одночасних підключень до сайту. Найчастіше досягається саме цей ліміт.

– Обмеження на загальну кількість процесів користувача (nProc).

Популярні прчини виникнення помилки:

  1. Велика кількість запитів до одного або кількох сайту хостинг-аккаунта. Наприклад, внаслідок DDoS-атаки або HTTP-флуду.
  2. Недостатня оптимізація скриптів сайту, через що вони не встигають своєчасно обробляти всі запити при деякому збільшенні їх кількості.
  3. Неоптимальна робота сайту з базою даних. Наприклад, наявність повільних запитів.
  4. Неправильна логіка роботи сайту, через що він звертається до своїх же ресурсів не безпосередньо, а по HTTP, тим самим породжуючи зайві запити.
  5. Якщо скрипти сайту в процесі своєї роботи звертаються до сторонніх ресурсів, причиною може бути відсутність або довга відповідь цих ресурсів. Замість того, щоб швидко завершити свою роботу, скрипту доводиться очікувати відповідь віддаленого сервера, через що процес працює довше звичайного і при великій кількості запитів черга процесів процесів може швидко заповнитися.

Варіанти рішення:

Вирішити подібну проблему, якщо вона викликана надмірною кількістю запитів до сторінок сайту зі сторони відвідувачів, зазвичай можна дуже просто – встановивши плагін кешування.

В такому випадку при відкритті сторінок буде значно менше використовуватись ресурсів серверу. Ми рекомендуємо звернути увагу на такі плагіни, які досить прості у налаштуванні:

– https://wordpress.org/plugins/wp-fastest-cache/

– https://wordpress.org/plugins/zencache/

– https://wordpress.org/plugins/super-static-cache/

Приклади налаштувань доступні в статті про “кешування

https://help.wphost.me/4r30H