Ситников Владимир рассказывает детально о Java памяти и анализе дампов памяти Java-приложений.
- Java heap
- Хранит Java объекты, их содержимое
- Очищается сборщиком мусора
- Заканчивается, если собрать не смогли
- Как понять, что память закончилась?
- Видим в логах OutOfMamoryError – возможно наш случай
- Как анализировать память
- Материал для анализа
- Дамп памяти
- GC лог здорового человека
- GC log курильщика
- Как понять, кто создает объекты?
- Чем открывать дамп памяти?
- Eclipde MAT наше все
- VisualVM работает не быстро +
- Java-object-layout только на микроуровне
- Class histogram
- Dominator Tree
- Алгоритм анализа дампов в Eclipse MAT
- Но как же автоматизация?
- Примеры, когда OQL пасует
- Если в одной коллекции хранятся разнородные данные
- Если данные разбиты по разным java-объектам
- Что бы хотелось
- Как сделать SQL?
- Где мы сейчас?