Jmeter Out of memory _ Тест загрузки файла - PullRequest
0 голосов
/ 05 июня 2018

Я сталкиваюсь с ошибками памяти при выполнении теста загрузки файла.Я запускаю тест из экземпляра ec2 m4.xlarge (16 ГБ ОЗУ) и выделил 80% памяти в виде размера Jmeter.Во время теста загрузка ЦП достигает 100%, используется вся память (около 12 ГБ), и в папке Bin создается огромный файл java_pid ***. Hrpof (дамп кучи).

Размер загрузки файла: Mix200 КБ, 400 МБ, 1,5 ГБ файлов
Нет Всего тем: 50
Версия Jmeter: 3,3

Я пробовал ниже предложенное на разных форумах, но не сработало:

  1. Отключенные слушатели
  2. Запуск теста в режиме без графического интерфейса
  3. Увеличенный размер кучи в jmeter.bat
  4. Запуск теста из экземпляра более высокой конфигурации (пока нет)чтобы попробовать это)

Кто-нибудь сталкивался с этим и как вы это исправили?

Кроме того, как отключить огромный (3-5 ГБ) java_pid ***. hrpof файл дампагенерируется?

1 Ответ

0 голосов
/ 05 июня 2018

50 threads * 1.5 GB == 75 GB пока у вас есть от 3 до 5 ГБ, выделенных для JMeter, так что этого явно недостаточно.

Вам нужно использовать что-то вроде m4.10xarge с 160 ГБ ОЗУ или m5d.12xlarge с 192 ГБ RAM , чтобы иметь возможность загружать эти большие файлы с таким количеством потоков.

Другой вариант - перейти на Распределенное тестирование , но вам нужно будет запустить еще m4.xlarge экземпляров


Вы также можете попробовать перейти на Сэмплер HTTP Raw Request , который имеет замечательную функцию потоковой передачи файла непосредственно на сервер без предварительной загрузки его в память , поэтому теоретически вы сможете симулировать загрузку файлов даже на этом ограниченном экземпляре, однако это можетне полностью отражает реальный сценарий жизни.Вы можете установить сэмплер HTTP Raw Request, используя JMeter Plugins Manager

Чтобы отключить создание дампа кучи, удалите строку DUMP="-XX:+HeapDumpOnOutOfMemoryError" из сценария запуска JMeter.

...