Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

JMeter и OutOfMemory. Исследовательский доклад

1,297 views

Published on

Презентация Екатерины Карасаевой на SQA Days-16
14-15 ноября 2014, Санкт-Петербург, Россия
www.sqadays.com

Published in: Education
  • I have done a couple of papers through ⇒⇒⇒WRITE-MY-PAPER.net ⇐⇐⇐ they have always been great! They are always in touch with you to let you know the status of paper and always meet the deadline!
       Reply 
    Are you sure you want to  Yes  No
    Your message goes here
  • Be the first to like this

JMeter и OutOfMemory. Исследовательский доклад

  1. 1. JMeter и OutOfMemory Екатерина Карасаева NetCracker
  2. 2. Обо мне Экспертиза в нагрузочном тестировании Тестирую телеком-решения в NetCracker Skype — ekaterina.karasaeva
  3. 3. О чем будет доклад JMeter и последствия OutOfMemory Устройство памяти в JMeter (JVM HotSpot) Про хипдамп и подходы к нему «Best practices» в JMeter по работе с памятью
  4. 4. Apache JMeter Open-source Java приложение JMeter используется для нагрузочного тестирования Может создавать утечки потребления ресурсов машины
  5. 5. Последствия OutOfMemory Остановка всего нагрузочного теста Невалидность нагрузочного замера Невозможность сохранить изменения в JMeter скрипте
  6. 6. Устройство памяти Java Heap PermGen (Method Area) Young Generation Threads 1..N Old Generation Eden From To -Xms512m -Xmx512m -XX:MaxPermSize =128m N * -Xss1024k
  7. 7. Garbage Collector Eden From To Old Generation Young Generation  Minor GC чистит Young Generation  Full GC чистит Young Generation + Old Generation  Во время операций GC - треды JMeter останавливаются (момент «stop-the-world»)
  8. 8. Full GC in action
  9. 9. OutOfMemory in action
  10. 10. HeapDump  В JMeter.bat прописать флаг -XX:+HeapDumpOnOutOfMemoryError  При OutOfMemory будет файл java_pid*.hprof (хипдамп, heap profiler)  Открываем хипдамп с помощью Memory Analyzer Tool  Используем репорты для анализа:  Run Expert System Test -> Leak Suspects репорт  Dominator tree репорт  Histogram репорт
  11. 11. Leak Suspects репорт Dominator-tree Leak Suspects Histogram
  12. 12. Dominator Tree репорт Retained Heap Shallow Heap
  13. 13. Histogram репорт Чтобы узнать какие конкретные объекты съели память в этом классе – вызов контекстного меню – list objects – with incoming references
  14. 14. Histogram репорт
  15. 15. API JMeter http://jmeter.apache.org/api/index.html - список всех API в JMeter org.apache.jmeter.visualizers — Listeners, reports org.apache.jmeter.report - Listeners, reports org.apache.jmeter.assertions — Assertions org.apache.jmeter.extractor — Post-processors (Beanshell, regexp) org.apache.jmeter.functions — JMeter functions (Beanshell) org.apache.jmeter.modifiers — Pre-processors org.apache.jmeter.sampler — Debug Sampler, listeners, reports org.apache.jmeter.util — BeanShell
  16. 16. JMeter — to do and not to do Лиснеры: ставим галочку Errors only или выключаем полностью View Results in Table => возможность OutOfMemory View Results in Tree => возможность OutOfMemory Для логирования используйте Sample Data Writer Проверьте размер хипа в файле JMeter.bat set HEAP=-Xms2048m -Xmx2048m (по дефолту — 512 Мб) Тестируйте в non-gui режиме jmeter -n -t test.jmx -l test.jtl Для трекинга раскомментируйте строки в JMeter properties: #summariser.name=summary #summariser.interval=180 #summariser.out=true
  17. 17. JMeter — to do and not to do Пользуйтесь последней версией JMeter Используйте встроенные функции JMeter CSV легче XML jmeter.save.saveservice.output_format=csv При запуске большого количества тредов (>100), ставьте delay create threads until needed на Thread Group и не забывайте про Ramp-Up
  18. 18. Полезные ссылки 1. Как запустить JMeter в non-GUI режиме https://clck.ru/9MXHT (http://jmeter.apache.org) 2. Производительность JMeter в зависимости от версии https://clck.ru/9MXHX (http://wiki.apache.org) 3. How to monitor Java Garbage Collection https://clck.ru/9MXHD (http://www.cubrid.org) 4. Memory Analyzer Tool — инструмент для анализа хипдампов http://www.eclipse.org/mat/

×