JVM выполняет Java-байткод и управляет памятью; лимит контейнера не равен допустимому размеру Java heap.
Что такое JVM и требуется ли отдельно конфигурировать память для Java-контейнера, кроме настроек ресурсов пода?
JVM выполняет Java-байткод и управляет памятью; лимит контейнера не равен допустимому размеру Java heap.
Короткий ответ
Что ответить на собеседовании
Подробный разбор
Ответ с пояснениями
JVM выполняет Java-байткод и управляет памятью; лимит контейнера не равен допустимому размеру Java heap.
Современная JVM может учитывать cgroups, но настройки и версию нужно проверить. Оставляйте место для metaspace, thread stacks, direct buffers и native memory. Xmx или MaxRAMPercentage подбирают относительно лимита с запасом, иначе контейнер может получить OOMKill раньше ошибки Java heap.
Источник: docs.oracle.com.