Подводные камни в нагрузочном тестировании - Владимир Ситников

  Рет қаралды 6,915

Heisenbug

Heisenbug

Күн бұрын

Ближайшая конференция - Heisenbug 2024 Autumn, 10 октября (Online), 17-18 октября (Санкт-Петербург + трансляция).
Подробности и билеты: jrg.su/Tq0vcu
- Ближайшая конференция: Heisenbug 2023 Autumn - 10-11 октября (online), 15-16 октября (offline)
Подробности и билеты: bit.ly/3qd3swV
- - -
. . .Конференция по тестированию Гейзенбаг 2016 Moscow,
Москва, 10 декабря 2016 г.
Запустить нагрузочный тест - дело нехитрое. Но запуск без анализа - время на ветер. При анализе выявляется такое, от чего приходится повторять замер. Например: времена отклика получились хорошее, а при детальном анализе оказалось, что все страницы показывали 404-ую ошибку. В начале теста времена хорошие, а потом вообще никакие. Или даже так: JMeter показывает, что «всё замечательно», а в реальности нагрузка не подавалась полчаса. Бывает, что в целом всё хорошо, но есть неприятные выбросы. Как анализировать причины выбросов? Как узнать, на каких данных они возникают? И на этот вопрос будет рекомендация.
В докладе будут рассмотрены типичные подводные камни при тестировании enterprise приложений и варианты решения этих проблем. Доклад построен на примере JMeter, но многие подходы могут с тем же успехом применяться и к другим инструментам. Владимир расскажет, чем среднее отличается от 90% line, как coordinated omission мешает измерять времена отклика, и научит способам обхода типичных проблем, возникающих при замере производительности.

Пікірлер: 12
@djAbyssRT
@djAbyssRT 3 жыл бұрын
25:20 - такой график показывайте на собеседованиях ., но я ожидал жизненных ситуаций чуть больше.
@djAbyssRT
@djAbyssRT 3 жыл бұрын
25:03 : смысл в том что обсуждение идет косяков jmeter. да , в других инструметах их почти нет , но это вас и не сделает экспертом в НТ.... идиотизм
@djAbyssRT
@djAbyssRT 3 жыл бұрын
28:00 -- хотите прикол? кроме как HP LP в свое время это не ввели компании о нативной интеграции THINK TIME транзакции. Штука оказалось малонужной , ибо нт с таким стрёмингом априори вызывает вопросы. либо там нужно делать например : асинхрон MQ фабрику , либо страдай 505 . 404 по rest
@lyonyan
@lyonyan 3 жыл бұрын
Ошибочка 24:35 - таймер не после а перед каждым самплером отрабатывает 😆
@djAbyssRT
@djAbyssRT 3 жыл бұрын
ёлки палки! перцентили же есть! а если не дурак то смотри глазом графики. По просадкам могжет быть что автогенератор отчета сравняет с землёй, а вот ты сможешь увидеть корреляцию локальной зоне и потом увидеть что "например" GC тут вступил в бой на минуту... или дисковая система пошла на тех обслуживание нами любимыми админами :))))
@djAbyssRT
@djAbyssRT 3 жыл бұрын
а ну он потом рассказывает об этом.
@Олег-ю3щ4ъ
@Олег-ю3щ4ъ 7 жыл бұрын
Coordinated Omission начинается на 33:21 и заканчивается на 34:33 - немного странно слышать об этой проблеме в 2017 году, т.к. проблема известна с 2013 года и может быть уже исправлена в Вашем инструменте.
@Олег-ю3щ4ъ
@Олег-ю3щ4ъ 7 жыл бұрын
Как, например, в wrk github.com/TechEmpower/FrameworkBenchmarks/issues/1220#issuecomment-83394883
@VladimirSitnikov
@VladimirSitnikov 5 жыл бұрын
Олег, 1) Да, проблема, конечно, не новая. Но практика показывает, что едва ли многие про неё знают. К сожалению. 2) Мне очень приятно, что на неё потрачено лишь 73 секунды времени. Если бы я 15 минут рассказывал, то было бы гораздо печальнее 3) Стоит учитывать уровень подготовки публики. В зале нагрузкой занимались максимум 10-20% слушателей, а остальные были "интересующиеся" 4) Coordinated Omission для JMeter актуально, и на стороне JMeter проблема не решена. Поэтому тем, кто использует JMeter о ней знать нужно 5) В докладе я и фокусировался на том, как обходить CO на стороне JMeter с помощью плагина. Сейчас плагин входит в состав JMeter и называется Precise Throughput Timer 5) По факту, wrk не является универсальным инструментом на все случаи жизни. Иногда и JMeter удобно. 6) Удивительно, что вы не намекаете на зашквар про "среднее vs персентили"
@zettlejamx
@zettlejamx 4 жыл бұрын
@@VladimirSitnikov а где сейчас можно Exp timer взять?
@VladimirSitnikov
@VladimirSitnikov 4 жыл бұрын
@@zettlejamx Сейчас таймер входит в базовую поставку JMeter и называется Precise Throughput Timer (jmeter.apache.org/usermanual/component_reference.html#Precise_Throughput_Timer) В JMeter 5.3 будет повышение точности и скорости работы самого таймера (см github.com/apache/jmeter/pull/553 ). Финальной сборки пока нет, но в ночных уже можно пробовать (см ci.apache.org/projects/jmeter/nightlies/ )
@zettlejamx
@zettlejamx 4 жыл бұрын
@@VladimirSitnikov Спасибо
Running With Bigger And Bigger Lunchlys
00:18
MrBeast
Рет қаралды 116 МЛН
哈哈大家为了进去也是想尽办法!#火影忍者 #佐助 #家庭
00:33
Нагрузочное тестирование 2023
45:58
Heisenbug
Рет қаралды 4,5 М.
017. Нагрузочное тестирование - Олесь Писаренко
46:45
Владимир Ситников - B-tree индексы в базах данных на примере .NET Entity Framework и PostgreSQL
59:17
DotNext — конференция для .NET‑разработчиков
Рет қаралды 2,4 М.
Running With Bigger And Bigger Lunchlys
00:18
MrBeast
Рет қаралды 116 МЛН