1. Сегодня стартовали новогоднюю распродажу наших курсов! Подробности можно узнать в тут.
    Скрыть объявление

2 инструкции по решению проблемы превышения разрешённой нагрузки сервера Wordpress

Тема в разделе "Открытый форум - все-все-все", создана пользователем Дядя Фёдор, 13 ноя 2017.

  1. Дядя Фёдор

    Дядя Фёдор Крепкий орешек

    Сегодня обнаружил, что процессор сервера грузится на 50-60%. Ещё вчера нагрузка держалась на 1-2%.

    Инструкция 1.

    Вчера установил новый плагин, поэтому сразу подумал на него и cron. Здесь, на форуме, живо обсуждали, что cron забивает все лимиты Бегета.
    Пришлось познакомиться с новым инструментом - плагин Wordpress по управлению кроном!
    Поставил WP Crontrol. С помощью плагина можно посмотреть, какие процессы установлены на cron и прибить лишние.

    На своих сайтах я отключаю внутренний функционал Wordpress по запуску wp-cron.
    В файле wp-config.php дописываю строчку:

    define('DISABLE_WP_CRON', true);

    Но после этого нужно дёргать wp-cron самостоятельно, настроить на сервере cron:

    /usr/bin/wget -O /dev/null -q 'http://site.com/wp-cron.php'

    Вернёмся к плагину WP Crontrol. Посмотрел процессы в расписании, а там:
    - висит давно удалённый Updraft backup (удалил процесс).
    - раз в час плагин KPI SEO проверяет свою лицензионность, а для этого функция запрашивает их сервер (отключил плагин и удалил процесс вручную, кривой плагин сам его не удалил).
    - громовский linkator тоже что-то дёргает по крону, когда отключил плагин, то он корректно отработал и убрал свою задачу из крона.
    - Yoast SEO раз в сутки пересчитывает внутренние ссылки всего сайта, отключил у него эту функцию (SEO->Консоль->Возможности->Счетчик текстовых ссылок), т.к. не вижу, в чём её польза.

    К сожалению, после этих манипуляций нагрузка на сервере не упала. Не знаю, почему.
    Но помогла перезагрузка сервера!

    cd0ac879d8c06858c75c4042e8e79b35.png

    Оранжевый график - загрузка процессора.


    Инструкция 2.

    Нагрузка 1-2% не всегда была такой низкой. До этого она была 10-15% и днём даже поднималась до 25-30%.
    Разбирался вместе с техподдержкой хостинга. Удалось выяснить, что сайты постоянно атакуют с целью взлома по двум направлениям:
    1. Перебор наличия уязвимых плагинов Wordpress - периодически запускают скан сайтов на поиск уязвимостей. Не боролся с этим, т.к. не знаю как. Не думаю, что это создаёт сильную нагрузку. 1-2% загрузки сервера тому подтверждение.
    2. Перебор логинов и паролей. Именно это сильно грузило сервер!

    Решить проблему с помощью плагинов Login Lockdown и т.п. не удалось.
    Для nginx проблему решили через лимитирование запросов к wp-login через limit_req:

    в секцию http добавляем:

    limit_req_zone $server_name zone=wp:10m rate=1r/m;
    limit_req_status 503;


    в секцию server добавляем:

    location /wp-login.php {
    limit_req zone=wp burst=1 nodelay;
    location ~* \.php$ {
    fastcgi_pass unix:/var/www/php-fpm/admin.sock;
    include fastcgi_params;
    }
    }

    Скрипткиддисы постоянно продолжают свой брутфорс, но мне это уже не наносит вреда.
     
    aza, neva2012, Hillary Clinton и 3 другим нравится это.
  2. gnezdo

    gnezdo Квадро-марафон

    я wp-login закрываю переопределяя его в другую локацию через плагин ithemes security, там же можно задать расписание времени работы админа, но плагин могу порекомендовать лишь крепким парням, которые не боятся настроек. Ну и были несколько раз с плагином косячки, при обновлении очень сильно грузил оперативную память
     
  3. alexfray

    alexfray Профи

    а я ставлю дополнительный пароль на страницу логина через .htpasswd, так у них вообще нет доступа к странице логина
     
    psd2css, NoClick и gnezdo нравится это.
  4. Дядя Фёдор

    Дядя Фёдор Крепкий орешек

    Брутфорс этой формы не грузит сервер?
     
  5. alexfray

    alexfray Профи

    по идее нет, но на 100% не скажу, не специалист)
     
  6. Грозит всем. Но там проверка на уровне сервера происходит - т.е. почти моментально. При этом не известно какой вообще логин.
    Но более правильно (в первую очередь касаемо ворпресса) - вообще админку спрятать. Еще бы вообще упоминание о нем везде выпилить (и версию), но с ворпрессом это практически не реально.
     
  7. Hillary Clinton

    Hillary Clinton Квадро-марафон

    Кто-нибудь сидит на бегете? Как кешируете вордпресс?
    У меня 3к уников в сутки дают значительное превышение лимитов (стоит wp super cache, сборка wp-mfc).. Не знаю что делать:( Не сталкивались?
     
  8. neva2012

    neva2012 Квадро-марафон

    Я сижу.
    wp super cache
    Овер 5к уников в сутки - посмотрел за вчерашний день: Нагрузка 4,53 CP (5,4% от лимита).
    Вот дагадайся в чем дело, проходили ведь марафон вместе ))).
    11.jpg
    Кстати несколько дней до этого нагрузка возрастала раза в 3, но потом сама вернулась к прежним значениям - похоже сам Beget что-то там мутил.
     
    Последнее редактирование: 14 ноя 2017
  9. Андрей Ruberoid

    Андрей Ruberoid Третий марафон

    Замечал, что сайты на сборке wp-mfc работают тяжело. Попался один, который летал - на нем стоял тотал кэш.
     
    neva2012 нравится это.
  10. Hillary Clinton

    Hillary Clinton Квадро-марафон

    Везёт, у меня 128 CP (150% от лимита) :(
     
  11. neva2012

    neva2012 Квадро-марафон

    Ну вот Андрей всю интригу испортил ))
    Дело не в везении, тоже упирался в лимиты пока не сменил тему.
     
    Последнее редактирование: 14 ноя 2017
    Андрей Ruberoid нравится это.
  12. alexfray

    alexfray Профи

    может кэш не работает? у меня было такое, попробуй по фтп изменить что-нибудь в футере и потом посмотреть с незалогиненного браузера поменялось или кешированую версию выдает
     
    Hillary Clinton нравится это.
  13. jray

    jray Пятый марафон

    у меня 200% лимита.... кто больше? :)
     
  14. neva2012

    neva2012 Квадро-марафон

    Так нечестно - может у тебя в сутки овер 100к юзеров ..
     
  15. У меня wp-mfc тоже грузит бегет.
     
  16. Duck

    Duck Квадро-марафон

    Мне бегет сайт отключил за превышение нагрузки. Я взял самый дешевый впс в за 600 рублей в месяц у нормального хостера и свел на него 4 или 5 аккаунтов максимальных из бегета. Сервак вообще не видит нагрузки :)
    Уже год наверное как нарадоваться не могу чтотак поступил. Экономия и по баблу и по нервам. При этом качество улучшилось.
    И да, я не админ ни разу, всему учился сам с нуля, разозлившись на бегет
     
    DKey и Classico нравится это.
  17. какую линуксню осваивал? я смотрел в сторону центос 7
     
  18. Duck

    Duck Квадро-марафон

    Мне дебиан нравится, хз почему :)
     
    gnezdo нравится это.
  19. Кстати, у меня на вордпрессе временами падает база, подскажите, что подкрутить, чтобы оно стабильно работало? Или тут надо перейти на более мощный сервак? Хостинг заявляет памяти 500 мегабайт. Облако.
     
  20. gnezdo

    gnezdo Квадро-марафон

    у меня было такое на DigitalOcean на минимальном 5$ тарифе, где-то у них почитал что такая проблема с мускулем наблюдалась у многих и рекомендовали перейти на 10$ тариф, там памяти побольше. Вот по теме https://mariadb.com/resources/blog/starting-mysql-low-memory-virtual-machines
     
    sheeva и arsen2 нравится это.

Поделиться этой страницей