У меня был сложный вопрос во время интервью сегодня. Они спросили меня, как найти основную причину ошибки из памяти в моем производственном коде. Я начал говорить о профилировщиках. Интервьюер потянул его в другом направлении, сказав, как мне генерировать трафик, который происходит в производстве, чтобы извлечь выгоду из профилировщика. Я понятия не имел. Любая информация будет очень полезна.Обнаружение утечки памяти в производственном коде
5
A
ответ
3
Профайлеры не лучший инструмент гоняться утечками памяти в производстве
- профайлеры не работают на производственных виртуальных машинах
- часто невозможно воссоздать в разработчике или проверить условия, которые создали утечку памяти в производство (интервьюер намек)
решение взять дамп кучи (с помощью jmap например - зависит от JVM) и анализировать его с помощью такого инструмента, как отличный (и в свободном доступе) SAP Memory Analyzer (MAT)
Смежные вопросы
- 1. Обнаружение утечки памяти node.js/javascript в коде
- 2. обнаружение утечки памяти Android
- 3. Обнаружение утечки памяти Valgrind
- 4. Обнаружение утечки управляемой памяти - C#
- 5. Обнаружение утечки памяти в ResizeImage
- 6. Обнаружение утечки памяти в Ruby
- 7. Обнаружение утечки памяти в Python
- 8. Обнаружение утечки памяти в DLL
- 9. обнаружение утечки памяти в C
- 10. Обнаружение утечек памяти в коде Android JNI
- 11. Обнаружение протекающего процесса памяти утечки
- 12. Обнаружение утечки памяти вызвало ошибки
- 13. FxCop и обнаружение утечки памяти
- 14. Visual C++ - обнаружение утечки памяти
- 15. Обнаружение утечки памяти в java на Android
- 16. Обнаружение утечки памяти в Mac OS
- 17. Обнаружение утечки памяти в потоке Java
- 18. Обнаружение неуправляемой утечки памяти в управляемом приложении
- 19. Обнаружение утечки памяти в компиляторе C/C++
- 20. Отключить обнаружение утечки памяти в boost.Test
- 21. обнаружение утечки памяти в C++ с/без визуального детектора утечки
- 22. XS Ошибка утечки памяти в этом коде?
- 23. решение утечки памяти в этом коде
- 24. Ошибка утечки памяти в этом коде?
- 25. Предотвращает утечки памяти в этом javascript-коде?
- 26. Поиск утечки памяти браузера в коде jQuery
- 27. System.Diagnostics.Debug.WriteLine в производственном коде
- 28. Использование Native.setProtected в производственном коде
- 29. Весна SimpleMessageBroker в производственном коде
- 30. ruby / ruby on rails обнаружение утечки памяти
Примечание. Сброс кучи позволяет только заморозить сервер приложений, и иногда приложение может быть повреждено. И предположим, что вы выделили 12GB на jvm на производство, вам нужна другая машина с объемом более 12 ГБ для анализа дампа кучи. Вы также можете использовать jvisualvm для анализа. Он поставляется как часть JDK. –