Как вы проводите тестирование производительности в Ruby webapps?

Я смотрел, как люди тестируют свои приложения, чтобы решить, где делать кэширование или применять некоторые дополнительные инженерные усилия, и до сих пор httperf и простой sesslog были довольно полезны.

какие инструменты и приемы вы применяли в своих проектах?

5 ответов


Я использую httperf для представления высокого уровня производительности.

Rails имеет встроенный скрипт производительности, который использует драгоценный камень ruby-prof для анализа вызовов глубоко в стеке Rails. Есть удивительный Railscast on Запрос Профилирования С помощью этой техники.

NewRelic есть некоторые серьезно крутые инструменты анализа, которые дают данные в режиме реального времени. Они просто сделали его "облегченной" версией, доступной бесплатно.


Я использую в JMeter для тестирования на основе сеанса-это позволяет очень мелкозернистый контроль над страницами, которые вы хотите ударить, параметры для инъекций, петли, чтобы пройти, и т.д. Он отлично подходит для моделирования того, сколько реальных пользователей может обрабатывать ваш сайт, а не только для тестирования набора статических URL-адресов. Вы можете распространять тесты на нескольких машинах довольно легко, загрузив JMeter-сервер на компьютерах с общедоступными IP-адресами. Я обнаружил некоторые ограничения в количестве пользователи / потоки любая машина может бросить на сервер сразу (это зависит от теста), но jmeter помог моей команде улучшить емкость наших приложений для пользователей до 6x.

У него нет причудливой графики-я фактически использую свою собственную внутреннюю графику с gruff, которая может выполнять анализ производительности по запросу для определенных страниц и действий.


Я оцениваю новый набор инструментов и измерений веб-страницы с открытым исходным кодом под названием Jiffy. Это не особенно для ruby, он работает для всех видов webapps

там же Расширение Jiffy Firebug для отображения метрик в браузере.


Я также предлагаю вам посмотреть на Browser Mob для нагрузочного тестирования.


мой коллега также опубликовал некоторые интересные мысли об этом.