Скажите «Ой»: JVM и OOM Killer

© Сергей Колесников

Аннотация

Когда слышишь об OutOfMemory в Java, на ум приходят всякие раздувшиеся коллекции, забытый finally или тонны бесполезных объектов, почему-то зависших в куче. Для устранения таких причин есть стектрейсы, хип-дампы и другие полезные штуки, но главное – возможность исправить что-то в своём коде.

Но как быть, если нехватка случилась в нативной памяти, вне кучи? Как определить ее источник? На что можно повлиять, если напрямую с этим не работаешь? Почему вообще такое может произойти, и что делать, чтобы этого избежать?

В докладе посмотрим на эти вопросы глазами прикладного разработчика, прощупаем JVM Native Memory Tracking (и его недостатки), заглянем в устройство oomKiller’а в Linux и познакомимся с инструментами, которые бы уж лучше никогда не пригождались…

Дата
23.11.2023 20:45 — 21:20
Событие
Место
Новосибирск, бар Red Rabbit Академгородок
ул. Ильича 8, Россия
Это сокращённая версия доклада с митапа JUGNsk Meetup #21.
Владимир Плизга
Владимир Плизга
Программный инженер

Любимая технология: здравый смысл