Локальное нагрузочное тестирование PHP-скриптов
11.10.2010 технологии
Подскажите решение. Из комментариев, надеюсь, получится полезный список для тех, кому это тоже потребуется. В данный момент набросал маленький bash-скриптик, но он медленный, максимум, что может — 10 запросов в секунду почему-то.
Какие варианты? Я поискал, есть профессиональные решения, но обычно огромные, хочется что-то шустренькое, быстрое, простое.
Комментарии
Комментирование этой статьи закрыто.
« Хабросоздатели и хабравладельцы настоящие хабрамудаки Снова задачка для программистов »
ab ?
Он же только в комплекте с апачем, наверно?
jakarta.apache.org/j…
А оно точно будет быстрее bash-скриптика? Он запрашивает напрямую PHP-скрипт, а эти штуки эмулируют HTTP-запросы.
а Вы запускаете же на удаленном сервере? Не с домашней машины, где канал урезан скорее всего.. Мы на работе тестировали все наши оскомерсы на симфони с помощью жакарты.
Врядли ab нельзя собрать отдельно от апача
Я запускаю в локалке, у меня нет выделенных серверов, чтобы так баловаться. А ещё SelfChief, пожалуйста, не надо ставить нерабочие URLы, которые редиректят на хостера.
Миша, ну вот не получилось бы так, что потрачу время на изучение и сборку этой штуки, а она не сможет быть эффективней обычного самописного скрипта.
Я умоляю, httpd.apache.org/doc… это изучение? Там один-два параметра только и нужно.
siege
если надо «дешево и сердито»
Оказывается, во второй «Апач» ab уже встроенный. Уже поставил и уже тестирую. Оказывается, и правда быстрее запросы посылает, чем мой наколенный скриптик :) Видимо, в bash у меня совсем из задницы руки растут. Ну или bash (а скорее Zsh) тормозит.
Уррра! После быстрого проведения теста с тремя тысячами запросов (имитировалась одновременная работа трёх пользователей-гиперхолериков), получилось уронить файл!
Всё, теперь у меня есть инструмент, я смогу решить проблему. Отлично.
Ну да, встроенный. Только мне казалось у тебя нет апача.
Да, не было Apache, пришлось поставить. Но не пользуюсь, меня Мангустик на 100% устраивает.
Я уточнил про вторую версию потому что у первого «Апача» вроде как ab нет в комплекте.
В общем, ab — охренительная штука! У меня сейчас будут количественные данные. Выяснилось (хотя я и так это знал), что при больших нагрузках Daos ещё и подсчитывать просмотры не успевает с такой реализацией функций чтения/записи.
Сейчас переделаю их и смогу оценить количественно эффект от проделанной работы. Классно.
Ну и, пожалуй, на этот раз проблема будет решена уж точно.
Для справки. ab отдельно от апача установить можно. В debian/ubuntu он находится в пакете apache2-utils
ab – глупая нагрузка, тестирование «в лоб» При наличии хорошего кеша в проекте – полезность такого теста сомнительна
Jakarta Jmeter – сложная логика тестов и офигенная «конфигуряемость», но тяжела, зараза – это Java
Пример несложного теста
habrahabr.ru/blogs/p…
Для моих задач ab прекрасно подходит. Мне нужно просто максимум запросов к файлу с имитацией одновременных подключений. AB так и делает.
кстати, про больших нагрузках постоянный ио убивает винчестер :(
Надеюсь, мой выдержит :) А вообще, хочу ещё сейчас провести эксперимент — протестировать, как это будет работать, если весь Daos будет в оперативке. У меня как раз /tmp в tmpFS. Правда, подозреваю, что сбросов тогда просто не будет и всё. Посмотрим.