Size: a a a

QA — Load & Performance

2019 January 11

KY

Kirill Yurkov in QA — Load & Performance
так, а в нем на какие вещи смотреть?
источник

KY

Kirill Yurkov in QA — Load & Performance
файл типа .hprof?
источник

ВС

Вячеслав Смирнов in QA — Load & Performance
Kirill Yurkov
Привет всем. Может кто нибудь знает лайфхаки как просто вычислять, что именно вызывает утечку памяти в JMeter? Полез в профилирование JVM - конечно тема рабочая, но времени уходит много и порог вхождения высоковат, имхо (хотя может там есть джедайские техники?). Понимаю, есть вариант с работой тредов в режими по одному и мониторингом памяти, но когда сценариев тредов больше 20 и для них требуется еще и данные каждый раз готовить - не феншуй.
Привет. Использую java flight recorder (jmc) из oracle jdk.

Если профилировать с настройкой Allocation Profiling (самая нижняя галочка)
То в результатах профилирования:
Memory/Allocation/Allocation in new TLAB
Будет показано, кто и как создаёт больше всех объектов
источник

KY

Kirill Yurkov in QA — Load & Performance
вот, про это слышал. сейчас истестируем! спасибо
источник

ВС

Вячеслав Смирнов in QA — Load & Performance
У меня это: xpath post processor, css post processor, javascript (выражения в if или while), просто http sampler, для которых пришли большие ответы огромные. Если приходят большие ответы в тесте, то правильно перейти на jsr223 и принимать ответы на groovy. Или например использовать curl или wget через os process sampler вместо http sampler, или http sampler без получения тела ответа - md5 hash включить (Володя говорит, что md5 поможет, я в этом пока не уверен)
источник

KY

Kirill Yurkov in QA — Load & Performance
у меня похоже беда с upload файлика по https, если для http есть raw request то для https либо писать свой java класс либо даже не знаю)
источник

KY

Kirill Yurkov in QA — Load & Performance
я правильно понимаю что жметер надо запускать с ключами java -XX:+UnlockCommercialFeatures -XX:+FlightRecorder
источник

KY

Kirill Yurkov in QA — Load & Performance
?
источник

ВС

Вячеслав Смирнов in QA — Load & Performance
Kirill Yurkov
так, а в нем на какие вещи смотреть?
Открыть его в  eclipse mat и выполнить анализ - самое простое
источник

ВС

Вячеслав Смирнов in QA — Load & Performance
Kirill Yurkov
у меня похоже беда с upload файлика по https, если для http есть raw request то для https либо писать свой java класс либо даже не знаю)
Тут все просто. Смотри справку по http sampler
источник

ВС

Вячеслав Смирнов in QA — Load & Performance
https://jmeter.apache.org/usermanual/component_reference.html#HTTP_Request

File Path:

Name of the file to send. If left blank, JMeter does not send a file, if filled in, JMeter automatically sends the request as a multipart form request.

If it is a POST or PUT or PATCHrequest and there is a single file whose 'Parameter name' attribute (below) is omitted, then the file is sent as the entire body of the request, i.e. no wrappers are added. This allows arbitrary bodies to be sent.

@aklexel меня научил
источник

ВС

Вячеслав Смирнов in QA — Load & Performance
Так можно отправлять большие запросы, со сложной структурой, не загружая их в память вообще
источник

ВС

Вячеслав Смирнов in QA — Load & Performance
А raw requesr не поддерживает многое из http. Например, partial response, chanks, ... Не все хорошо с keepalive. И если запрос он отправит. То ответ иногда принять не может
источник

KY

Kirill Yurkov in QA — Load & Performance
Вячеслав Смирнов
https://jmeter.apache.org/usermanual/component_reference.html#HTTP_Request

File Path:

Name of the file to send. If left blank, JMeter does not send a file, if filled in, JMeter automatically sends the request as a multipart form request.

If it is a POST or PUT or PATCHrequest and there is a single file whose 'Parameter name' attribute (below) is omitted, then the file is sent as the entire body of the request, i.e. no wrappers are added. This allows arbitrary bodies to be sent.

@aklexel меня научил
а, то есть если указать параметр нейм, то память оно не жрет и делать надо с помощью POST?
источник

KY

Kirill Yurkov in QA — Load & Performance
Не совсем понял какой вариант подходящий - про использование памяти ни слова)
источник

ВС

Вячеслав Смирнов in QA — Load & Performance
Просто поверь тогда. Если тело запроса с загрузкой файла 100 МБайт формируется на вкладке body - это 100 МБайт строк в памяти.
А если загружается из файла и нет post processor на тело запроса, то тело просто почитается из файла и отправится.
Ограничение - тело из файла статическое. Не меняется, в нем не работают переменные, ...
источник

ВС

Вячеслав Смирнов in QA — Load & Performance
Как для raw request
источник

KY

Kirill Yurkov in QA — Load & Performance
у меня было так, тут я так понимаю проблем нет?
источник

VS

Vladimir Sitnikov in QA — Load & Performance
Kirill Yurkov
у меня было так, тут я так понимаю проблем нет?
А чего гадать? Запускаешь, получаешь хипдамп, и смотришь на что и как тратится память.
источник

i

infrast_ques in QA — Load & Performance
добрый день, подскажите пожалуйста, как сильно различается нагрузка на сервер при тесте с помощью jmeter и при реальной ddos атаке? и если jmeter не подходит для такого тестирования, то с помощью чего имитировать ддос атаку? заранее благодарю за ответы
источник