• Liveprof покажет, когда и почему менялась производительность вашего PHP-приложения



      Привет, Хабр! Меня зовут Тимур Шагиахметов, я PHP-разработчик в Badoo.

      Производительность приложения — один из важнейших критериев качества работы программиста. В вопросах оптимизации PHP-приложений помощником является профайлер.

      Недавно мы рассказывали о том, какими инструментами пользуемся для профилирования. Напомню: одним из инструментов для анализа производительности, когда непонятно, какие части кода повлияли больше всего на увеличение времени формирования ответа, является XHProf. Это расширение для PHP, которое позволяет профилировать код на боевом сервере и впоследствии  улучшать его.

      Но хотелось бы ещё иметь историю изменения производительности, чтобы можно было отследить, что и когда повлияло на её ухудшение, не так ли? Для этого около года назад мы разработали Liveprof — инструмент для автоматического профилирования всех запросов с интерфейсом для анализа изменения производительности приложения.

      Наш инструмент позволяет анализировать изменение производительности любой части кода, находить места, в которых наиболее сильно она упала. При этом его не нужно специально включать и ждать, пока накопится статистика, — он всегда активен и собирает данные для определённой доли всех запросов.

      В этой статье я расскажу о деталях реализации и особенностях использования этого инструмента.
      Читать дальше →
      • +84
      • 15.3k
      • 7
    • Анонимный Дед Мороз 2018-2019: пост хвастовства новогодними подарками

        Логотип АДМ 2018

        Анонимный Дед Мороз 2018-2019 набирает обороты: каждый пятый участник отметил подарок отправленным, а несколько человек даже нашли в себе силы встать из-за компьютера и забрать посылку на почте.

        Что же именно дарят Хабравчане своим Хабравнукам, Хабравнучкам и тем, кто не заполняет поле «Пол» в Хабрапрофиле? Давайте зайдем в комментарии и все у них разузнаем!

        С НАСТУПАЮЩИМ НОВЫМ 2019 ГОДОМ!

        Ваши iCTPEJlOK и kafeman
      • Концепции автоматического тестирования

        Здравствуйте, меня зовут Дмитрий Карловский и у меня, к сожалению, нет времени писать большую статью, но очень хочется поделиться некоторыми идеями. Поэтому позвольте потестировать на вас небольшую заметку о программировании. Речь сегодня пойдёт об автоматическом тестировании:


        1. Зачем мы пишем тесты?
        2. Какие бывают тесты?
        3. Как мы пишем тесты?
        4. Как их стоит писать?
        5. Почему модульные тесты — это плохо?

        Правильная пирамида тестирования

        Читать дальше →