Поддержка → Проблемы и решения → Превышение лимита Entry Processes
Превышение лимита Entry Processes
-
Здравствуйте!
Сайт стал очень часто превышать на сервере параметр Entry Processes(выделено 10), остальные параметры держаться в пределе нормы.
В чем может быть причина?
График по ресурсам за 7 дней
i58.fastpic.ru/big/2013/1101/6e/f89851d5ed0edeba40ac17b66bf9016e.png
лог
files.mail.ru/5CB722D0FD6149C6B6AE2F36F7DD8B46
-
entry process count = число одновременно работающих процессов PHP
увеличивается если
а) много посетителей (или ботов)
б) скрипты надолго зависают на выполнении (сетевые запросы. медленные mysql, обработка данных, загрузки файлов на сервер)вопросы наверное не по вордпресс, а к хостеру…
Хостер к сожалению ничего конкретного не говорит.
Может ли быть дело в индексах базы?
Пару подозрительных значений из phpMyAdmin.
Select_full_join — 576.4 k Количество запросов-объединений, выполненных без использования индексов. Если значение переменной не равно 0, рекомендуется проверить индексы таблиц.
Select_range_check-5.8 k Количество запросов-объединений, выполненных с использованием поиска по диапазону для выборки строк из вторичной таблицы. Если значение переменной не равно 0, рекомендуется проверить индексы таблиц.все что можно сделать с БД — оптимизировать таблицы,
или плагинами (которых куча) или выбрать все таблицы в phpMyAdmin’e и выбрать операцию — Оптимизироватьдальше уже только оптимизация самих запросов на уровне PHP кода,
если у вас тема от стороннего разработчика (не ваша личная), то этим в принципе занимаются разработчики темы
аналогично с запросами SQL от плагиновс вашей стороны можно глянуть в лог медленных запросов SQL (если дает хостер) если там ничего нет — все ок, опять же PhpMyAdmin кажет это в статистике — slow_query
Slow_queries=7 c параметром long query time=10. Только я не понял что он означает, что за все время всего 7 раз запросы выполнялись больше 10 сек или имеется 7 запросов которые постоянно длятся более 10 сек.
за все время всего 7 раз запросы выполнялись больше
Достаточно ли этого порога в 10 сек. чтобы исключить БД из виновников нагрузки?
а если у вас на самом деле много запросов выполняющихся.. ну допустим по 5с?
сколько у вас генерируется страница?
добавьте в самый конец footer.php вашей темы
<!-- <?php printf(__('%d %s %d' ), get_num_queries(), timer_stop(0, 3), round((memory_get_peak_usage()/1024)) ); ?> -->
тогда в просмотре исходного кода страницы будет статистика вида
<!— 29 0,157 5519 —>
где первая цифра — число запросов в базу, обычное значение около 50, сильно зависит от темы, виджетов и прочеговторая — время в секундах (после запятой милисекунды) для генерации, собственно это и интересует
третья — затраты памяти в КБ на генерацию странички
24 0,426 14407
p.s.
Проверил на разных страницах результаты схожи.они и должны быть схожи, если разве что обьектный кеш будет давать «всплески»
24 запроса всего это очень скромно,
но вот время генерации достаточно долго, хоть и не криминально,
http://ismyblogworking.com/ вот этот сайт начинает выдавать предупреждение примерно после 350мсвообщем 2 страницы в секунду с процесса PHP * 10 допустимых, 20 хитов в секунду. У вас бывают пики посещений превышающие это?
Если да — можно и хостинг поменять на лучший,и кстати кеширование бы использовали в статику, wp supercache тот же,
можно на короткое время, если конечно у вас не что-то типа магазина где есть «корзина» уникальная для всех (или другие уникальные элементы)Не превышаются, плюс запускал тест на loadimpact.com, сайт где-то около 30 соединений держал и Entry Processes больше 5 не поднимался.
С wp supercache отдельная история, при активации и настройке вместо сайта белая страница.есть и другие кеши, хотя конечно странно что суперкеш не работает, может не может корректно установить себя (1 файл в wp-content и папка для кеша wp-content/cache)
loadimpact бесплатный тест достаточно хилый, гуглбот напару с каким нибудь байду могут устроить гораздо более жесткую нагрузку, причем траффик будет гораздо меньше. а нагрузка выше, т.к. статические ресурсы которые просит loadimpact могут не запрашиваться ботами.
логи посмотрите, что было в моменты превышения лимита, как метрику/GA так и логи http сервера, может там ботов привалило куча с спамом каким нибудь, причин достаточно много
Да, кстати, чем для вас и вашего сайта чревато превышение лимита?
Обычно запросы ставятся в очередь на обработку, если их много, очередь растет, время ожидания увеличивается, если их очень много,то клиенты начинают получать ошибку 502 (если используется фронтэнд типа nginx) или просто ошибку от браузера о том что время ожидания истекло
Посмотрите ваш лог, если бы использовался nginx, то можно было бы посмотреть его лог, получали ли посетители ошибки 502Не может установить advanced-cache.php, атрибуты 777 для папки были установлены. Если создавать файл вручную по инструкции, то не отображается сайт.
Можно ли вручную заставить гуглбота нагрузить сайт?
При превышении лимита выдает ошибку 508 Resource Limit Is Reached и сайт блокируется на минут 10-20.
Можно ли вручную заставить гуглбота нагрузить сайт?
нет
можете воспользоваться какой-нибудь штукой типа Siege
ошибку 508 Resource Limit Is Reached
неприятно, тариф повыше принципиально не хотите? Или хостера другого. Некоторые режут чрезмерно
Довольно долго он проработал без проблем на моем хостере, поэтому предчувствие что все таки где то в сайте засела проблема.
Недавно был опять перегруз сайта, из логов показалось подозрительным приличное количество обращений от yandex bot.
Разве кэширование помогает снять нагрузку от ботов? И нет ли у вас идей что может мешать wp supercache установить свой файл кроме атрибутов папки?
Проблема оказалась в забитом apc cache.
Помогло его отключение «php_flag apc.cache_by_default Off».Yui спасибо за помощь.
- Тема «Превышение лимита Entry Processes» закрыта для новых ответов.