Слайд 2Правила участия в курсе
СДО: записи, «домашка»
Консультации
Форум и скайп-чат
Учебное приложение
![Правила участия в курсе СДО: записи, «домашка» Консультации Форум и скайп-чат Учебное приложение](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/995831/slide-1.jpg)
Слайд 3Структура курса
Основы ТП. Знакомство с JMeter
Цели ТП, сценарии и профили нагрузки
Сбор данных
![Структура курса Основы ТП. Знакомство с JMeter Цели ТП, сценарии и профили](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/995831/slide-2.jpg)
и анализ результатов
Усложнение сценариев
Слайд 5 Занятие 1
Основы ТП
Знакомство с JMeter
![Занятие 1 Основы ТП Знакомство с JMeter](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/995831/slide-4.jpg)
Слайд 6План занятия
Основы тестирования производительности
Что тестируем и как выглядят требования?
Три базовые составляющие
Краткий обзор
![План занятия Основы тестирования производительности Что тестируем и как выглядят требования? Три](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/995831/slide-5.jpg)
инструментов
JMeter как типичный представитель
Запись и воспроизведение
Отладка сценария
Сбор основных метрик
Анализ собранных результатов
Слайд 8ГОСТ Р ИСО/МЭК 9126-93
Эффективность — Набор атрибутов, относящихся к соотношению между уровнем качества
![ГОСТ Р ИСО/МЭК 9126-93 Эффективность — Набор атрибутов, относящихся к соотношению между](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/995831/slide-7.jpg)
функционирования ПО и объемом используемых ресурсов при установленных условиях.
Слайд 9ГОСТ Р ИСО/МЭК 9126-93
А.2.4 Эффективность (Efficiency)
А.2.4.1 Характер изменения во времени (Time
![ГОСТ Р ИСО/МЭК 9126-93 А.2.4 Эффективность (Efficiency) А.2.4.1 Характер изменения во времени](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/995831/slide-8.jpg)
behavior)
Атрибуты программного обеспечения, относящиеся к временам отклика и обработки и к скоростям выполнения его функций.
А.2.4.2 Характер изменения ресурсов (Resource behavior)
Атрибуты программного обеспечения, относящиеся к объему используемых ресурсов и продолжительности такого использования при выполнении функции.
Слайд 10 Так «эффективность» или «производительность»?
![Так «эффективность» или «производительность»?](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/995831/slide-9.jpg)
Слайд 11Эффективность +
При большой нагрузке не хватает ресурсов
=>
Нехватка ресурсов может приводить к
![Эффективность + При большой нагрузке не хватает ресурсов => Нехватка ресурсов может](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/995831/slide-10.jpg)
проявлению функциональных дефектов
Слайд 12ГОСТ Р ИСО/МЭК 9126-93
Надежность – Набор атрибутов, относящихся к способности программного обеспечения
![ГОСТ Р ИСО/МЭК 9126-93 Надежность – Набор атрибутов, относящихся к способности программного](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/995831/slide-11.jpg)
сохранять свой уровень качества функционирования при установленных условиях за установленный период времени.
Слайд 13ГОСТ Р ИСО/МЭК 9126-93
А.2.2 Надежность (Reliability)
А.2.2.1 Стабильность (Maturity)
Атрибуты программного обеспечения,
![ГОСТ Р ИСО/МЭК 9126-93 А.2.2 Надежность (Reliability) А.2.2.1 Стабильность (Maturity) Атрибуты программного](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/995831/slide-12.jpg)
относящиеся к частоте отказов при ошибках в программном обеспечении.
А.2.2.2 Устойчивость к ошибке (Fault tolerance)
Атрибуты программного обеспечения, относящиеся к его способности поддерживать определенный уровень качества функционирования в случаях программных ошибок или нарушения определенного интерфейса.
А.2.2.3 Восстанавливаемость (Recoverability)
Атрибуты программного обеспечения, относящиеся к его возможности восстанавливать уровень качества функционирования и восстанавливать данные, непосредственно поврежденные в случае отказа, а также к времени и усилиям, необходимым для этого.
Слайд 15Пример требований
При нагрузке до 100 одновременно работающих с системой клиентов:
среднее время отклика
![Пример требований При нагрузке до 100 одновременно работающих с системой клиентов: среднее](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/995831/slide-14.jpg)
должно составлять не более 2,5 секунд.
Слайд 16Пример требований
При нагрузке до 100 одновременно работающих с системой клиентов:
среднее время отклика
![Пример требований При нагрузке до 100 одновременно работающих с системой клиентов: среднее](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/995831/slide-15.jpg)
должно составлять не более 2,5 секунд,
количество отказов не должно превышать 1%
Слайд 17Пример требований
При нагрузке до 100 одновременно работающих с системой клиентов:
среднее время отклика
![Пример требований При нагрузке до 100 одновременно работающих с системой клиентов: среднее](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/995831/slide-16.jpg)
должно составлять не более 2,5 секунд,
количество отказов не должно превышать 1%
дисперсия не должна превышать 5%
Слайд 18Пример требований
При нагрузке до 100 транзакций в секунду типа «ping» и 10
![Пример требований При нагрузке до 100 транзакций в секунду типа «ping» и](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/995831/slide-17.jpg)
транзакций в секунду типа «action»:
среднее время отклика должно составлять не более 2,5 секунд,
количество отказов не должно превышать 1%
дисперсия не должна превышать 5%
Слайд 19Пример требований
При нагрузке до 100 транзакций в секунду типа «ping» и 10
![Пример требований При нагрузке до 100 транзакций в секунду типа «ping» и](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/995831/slide-18.jpg)
транзакций в секунду типа «action»:
среднее время отклика должно составлять не более 2,5 секунд,
количество отказов не должно превышать 1%
дисперсия не должна превышать 5%
сервер приложений должен потреблять не более 50% CPU и не более 1,2 гигабайта ОЗУ
Слайд 20Пример требований
При нагрузке до 100 транзакций в секунду типа «ping» и 10
![Пример требований При нагрузке до 100 транзакций в секунду типа «ping» и](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/995831/slide-19.jpg)
транзакций в секунду типа «action»:
среднее время отклика для транзакций типа «action» должно составлять не более 2,5 секунд,
количество отказов не должно превышать 1%,
дисперсия не должна превышать 5%,
сервер приложений должен потреблять не более 50% CPU и не более 1,2 гигабайта ОЗУ,
система должна расходовать не более трёх соединений с СУБД
Слайд 21Подробность требований
Какие требования лучше:
подробные
или
неформальные и нечёткие?
![Подробность требований Какие требования лучше: подробные или неформальные и нечёткие?](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/995831/slide-20.jpg)
Слайд 23Три базовые составляющие
Генерация нагрузки
Мониторинг характеристик производительности
Анализ результатов
![Три базовые составляющие Генерация нагрузки Мониторинг характеристик производительности Анализ результатов](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/995831/slide-22.jpg)
Слайд 24Три базовые составляющие
Ресурсов не хватает при большой нагрузке
Нужно много наблюдений
«В зачет» идут
![Три базовые составляющие Ресурсов не хватает при большой нагрузке Нужно много наблюдений](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/995831/slide-23.jpg)
как средние значения, так и отклонения от средних
Слайд 26Генерация нагрузки
JMeter – http://jmeter.apache.org/
grinder – http://grinder.sourceforge.net/
multi-mechanize – http://testutils.org/multi-mechanize/
Gatling – http://gatling-tool.org/
Tsung – http://tsung.erlang-projects.org/
loadUI – http://www.loadui.org/
curl-loader – http://curl-loader.sourceforge.net/
![Генерация нагрузки JMeter – http://jmeter.apache.org/ grinder – http://grinder.sourceforge.net/ multi-mechanize – http://testutils.org/multi-mechanize/ Gatling](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/995831/slide-25.jpg)
Слайд 27Генерация нагрузки
BlazeMeter – http://blazemeter.com/
Blitz – https://www.blitz.io/
Load Impact – http://loadimpact.com/
LoadStorm – http://loadstorm.com/
SOASTA – http://www.soasta.com/
![Генерация нагрузки BlazeMeter – http://blazemeter.com/ Blitz – https://www.blitz.io/ Load Impact – http://loadimpact.com/](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/995831/slide-26.jpg)
Слайд 28Мониторинг
Встроенные в инструменты средства
Средства операционной системы
Средства серверов, СУБД, …
Специализированные средства
Zabbix, Nagios, Hyperic
![Мониторинг Встроенные в инструменты средства Средства операционной системы Средства серверов, СУБД, …](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/995831/slide-27.jpg)
Слайд 29Анализ результатов
Встроенные в инструменты средства
Электронные таблицы
Пакеты для статистической обработки данных
![Анализ результатов Встроенные в инструменты средства Электронные таблицы Пакеты для статистической обработки данных](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/995831/slide-28.jpg)
Слайд 31Простой сценарий в JMeter
Запись сценария рекордером
Отладка сценария
Сбор основных метрик
Анализ собранных результатов
![Простой сценарий в JMeter Запись сценария рекордером Отладка сценария Сбор основных метрик Анализ собранных результатов](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/995831/slide-30.jpg)