Периодическая медленная работа после аварии
Posted: Wed Oct 18, 2017 7:21 pm
Приветствую, коллеги!
Прошу помочь советом: что делать, где смотреть и т.п.
Если коротко, суть вопроса - периодически возникает ситуация, когда сервер начинает медленно отдавать не кэшированные страницы. Кэшированные страницы при этом отдаются NGINX мгновенно. Загрузки сервера при этом нет: процессор почти на нуле, память свободная имеется.
Теперь подробности.
VPS: Vesta в конфигурации NGINX+Apache+MariaDB+почта+файервол.
Один единственный сайт на WordPress.
Из-за того, что не получилось без шаманства поставить Let's Encrypt через панель Весты, примерно 10 дней назад решил поставить плагин ВордПресс: WP Encrypt, который обещал установку и обновление сертификата. В результате после активации плагина сразу получил белый экран вместо сайта. До запроса и установки сертификата даже дело не дошло. Удалил через ФТП папку плагина, отключил плагин кэширования. Только после этого смог зайти в админку сайта, но все работало довольно таки странно, периодически не хватало части информации.
Через несколько минут обнаружил, что на диске нет свободного места - лог NGINX+Apache забил весь диск. С горяча я удалил все логи веб-сервера даже не посмотрев, что там было внутри.
После этого сайт смог работать, но только при выключенном плагине кэширования W3TC. На следующих день я восстановил сайт из бэкапа Весты на дату за день до аварии. Теперь уже все стало работать с кэшированием, как до аварии.
Но! Ежедневно стали возникать ситуации, когда сайт неожиданно начинает медленно загружать не кэшированные страницы, например, мне как залогиненному пользователю, остальным посетителям отдаются кэшированные страницы и тут все быстро. Причем медленность заключается в том, что 30-60 секунд просто смотришь на белую страницу, а потом в конце за 1 секунду все мгновенно загружается. Только Waiting (TTFB) именно для страницы - 36-59 секунд и это время соответственно ничего не грузится! Все остальное (скрипты, стили, картинки, шрифты) потом загружаются за 1-1,5 секунды.
Я по началу подумал на всяких ботов, сканеров и т.п. Зарылся в fail2ban, htaccess и настроил разных правил, перенес по времени кроны в ВордПрессе (медленная работа по началу наблюдалась примерно в одно и тоже время). Даже пару дней ни разу не заметил медленной работы.
Но сегодня перегружал VPS и сразу после его загрузки начались тормоза. Затем тормоза наблюдались несколько раз в течение дня. Различной продолжительности.
Во время тормозов запускал top – сервер абсолютно без нагрузки. Сортировал логи по времени изменения и просматривал их как раз, когда была замечена медленная работа, но тщетно. Ничего подозрительного.
Делал оптимизацию таблиц MariaDB. Но во время тормозов phpMyAdmin работает шустро. Из всего этого делаю вывод, что проблема именно в общении NGINX и Apache.
Но к сожалению не получилось во время тормозов зайти на Апач на прямую через порт 8080, я только потом обнаружил, что надо этот порт открыть.
Еще есть вариант перегрузить VPS в recovery mode, но пока этого еще ни разу не делал. Думаю, что там тоже надо знать какие команды запускать, чтобы что-то полезное сделать или узнать.
Еще заметил, что во время медленной работы также замедленно происходит общение по фтп, в SSH после ввода логина заметно дольше обычного приходится ожидать приглашения для ввода пароля.
Подозреваю, что все это как-то связано с тем самым забиванием дискового пространства, но что сейчас делать – даже не знаю.
df –h
df –i
Показывают, что сейчас все хорошо, места очень много.
Заранее спасибо за советы!
Прошу помочь советом: что делать, где смотреть и т.п.
Если коротко, суть вопроса - периодически возникает ситуация, когда сервер начинает медленно отдавать не кэшированные страницы. Кэшированные страницы при этом отдаются NGINX мгновенно. Загрузки сервера при этом нет: процессор почти на нуле, память свободная имеется.
Теперь подробности.
VPS: Vesta в конфигурации NGINX+Apache+MariaDB+почта+файервол.
Один единственный сайт на WordPress.
Из-за того, что не получилось без шаманства поставить Let's Encrypt через панель Весты, примерно 10 дней назад решил поставить плагин ВордПресс: WP Encrypt, который обещал установку и обновление сертификата. В результате после активации плагина сразу получил белый экран вместо сайта. До запроса и установки сертификата даже дело не дошло. Удалил через ФТП папку плагина, отключил плагин кэширования. Только после этого смог зайти в админку сайта, но все работало довольно таки странно, периодически не хватало части информации.
Через несколько минут обнаружил, что на диске нет свободного места - лог NGINX+Apache забил весь диск. С горяча я удалил все логи веб-сервера даже не посмотрев, что там было внутри.
После этого сайт смог работать, но только при выключенном плагине кэширования W3TC. На следующих день я восстановил сайт из бэкапа Весты на дату за день до аварии. Теперь уже все стало работать с кэшированием, как до аварии.
Но! Ежедневно стали возникать ситуации, когда сайт неожиданно начинает медленно загружать не кэшированные страницы, например, мне как залогиненному пользователю, остальным посетителям отдаются кэшированные страницы и тут все быстро. Причем медленность заключается в том, что 30-60 секунд просто смотришь на белую страницу, а потом в конце за 1 секунду все мгновенно загружается. Только Waiting (TTFB) именно для страницы - 36-59 секунд и это время соответственно ничего не грузится! Все остальное (скрипты, стили, картинки, шрифты) потом загружаются за 1-1,5 секунды.
Я по началу подумал на всяких ботов, сканеров и т.п. Зарылся в fail2ban, htaccess и настроил разных правил, перенес по времени кроны в ВордПрессе (медленная работа по началу наблюдалась примерно в одно и тоже время). Даже пару дней ни разу не заметил медленной работы.
Но сегодня перегружал VPS и сразу после его загрузки начались тормоза. Затем тормоза наблюдались несколько раз в течение дня. Различной продолжительности.
Во время тормозов запускал top – сервер абсолютно без нагрузки. Сортировал логи по времени изменения и просматривал их как раз, когда была замечена медленная работа, но тщетно. Ничего подозрительного.
Делал оптимизацию таблиц MariaDB. Но во время тормозов phpMyAdmin работает шустро. Из всего этого делаю вывод, что проблема именно в общении NGINX и Apache.
Но к сожалению не получилось во время тормозов зайти на Апач на прямую через порт 8080, я только потом обнаружил, что надо этот порт открыть.
Еще есть вариант перегрузить VPS в recovery mode, но пока этого еще ни разу не делал. Думаю, что там тоже надо знать какие команды запускать, чтобы что-то полезное сделать или узнать.
Еще заметил, что во время медленной работы также замедленно происходит общение по фтп, в SSH после ввода логина заметно дольше обычного приходится ожидать приглашения для ввода пароля.
Подозреваю, что все это как-то связано с тем самым забиванием дискового пространства, но что сейчас делать – даже не знаю.
df –h
df –i
Показывают, что сейчас все хорошо, места очень много.
Заранее спасибо за советы!