Ответы пользователя по тегу Серверная оптимизация
  • Как найти причину падения производительности приложения (apache, php, mysql)?

    @SergeyNN Автор вопроса
    Промежуточный ответ

    Пока ограничился такими мерами:
    - убрал профайлинг запросов (был включен всё это время оказалось еще со времен разработки);
    - поправил настройки кеша и т.п. для mysql по рекомендациям с хайлоад.ру.;
    - понизил степень сжатия gzip в апаче с 9 до 3 (это, как я думаю, самое влиятельное изменение на тормоза апача сейчас).

    При этом, как оказалось, запросов в секунду производится не 70, а 1000. Как я так раньше насчитал - не могу сказать :).
    Из этой 1000 процентов 90% - повторные попытки поставить в очередь отправку/прием данных со сторонней системы, которая в последнее время сбоит. Но это отдельная нагрузка от фоновых скриптов, она идет не через пожирающий процессор апач.

    Тем не менее, даже сейчас при этой 1000 запросов в секунду с указанными выше изменениями всё работает весьма стабильно. Загрузка проца в среднем 30-50% и только от Апача. Объем потребляемой памяти не вырос.

    Включал лог всех запросов. Время блокировок микроскопическое. Думаю, что всё же основной причиной просадок является этап работы веб-сервера.

    Конечно, нужно пересматривать архитектуру, разносить базы по чтению и записи, но это точно не в это лето.

    Обязательно отпишусь по достижению каких-либо принципиальных изменений.

    Спасибо всем за полезные советы!
    Ответ написан
    Комментировать