Apache jmeter, нагрузочное тестирование веб-сайтов

Наверняка Вам интересно, какую нагрузку может выдержать Ваш веб-сайт? Сколько нужно пользователей, чтобы ваш сайт начала тормозить? Либо совсем упасть? Сегодня мы при помощи apache jmeter и какой-то матери выясним это.

Устанавливаем jmeter, в debian-like линюксах всё очень просто:

sudo apt-get install jmeter

В виндовсах скорее всего нужно скачать бинари пакет: http://jmeter.apache.org/download_jmeter.cgi и поставить java-runtime: http://www.oracle.com/technetwork/java/javase/downloads/jre8-downloads-2133155.html.

Новый тестовый план уже заботливо создан за нас, он так и называется "Test Plan". И первым делом в тестовый план нужно добавить группу потоков (Thread Group):

Apache Jmeter

Для начала выставим Number of Threads(users) в 1. Это значение устанавливает сколько пользователей будут одновременно заходить на наш сайт. Loop count: forever. Далее в группу потоков нужно добавить модуль http request:

Apache Jmeter

Именно он будет отправлять запросы на наш веб-сайт. Заполняем анкетку:

Apache Jmeter

И добавляем модуль "View Results in Table":

Apache Jmeter

Он нам будет показывать подробные результаты по каждому запросу. И ещё добавляем модуль "Graph Results". Он будет показывать обобщённые графики:

Apache Jmeter

Для первого теста всё готово. Жмём кнопку "Старт" и смотрим что происходит:

Для 1 пользователя всё прекрасно, задержка ~700Ms, при пропускной способности(Throughput) ~90 страниц в минуту. Оке, увеличим количество пользователей до 10 и посмотрим что произойдёт:

Apache Jmeter

Пропускная способность ~255с/м, задержка выросло до ~2100Ms. Давайте попробуем прибить сервер, поставим 20 пользователей:

Apache Jmeter

Не получилось, похоже моего интернет-канала не хватает. Пропускная способность выросла всего до ~270 страниц в минуту, задержка до ~4400Ms, но сервер жив.



Учеба на программиста в современных реалиях

Давайте признаем, что сейчас, в России, есть только 2.5 вуза которые действительно учат. Все остальные только тратят Ваше время. По этому если Вы хотите стать программистом- вам придётся учиться самому.

Сравнение 5$ cloud хостеров. Linode vs. DigitalOcean vs. Amazon Lightsail vs. Vultr

Так как теперь и Linode предлагает 5-долларовые планы, пришло время сравнить самые популярные claud хостинги.


(0) Комментариев