Назад | Перейти на главную страницу

Ресурс временно недоступен [вилка] и недостаточно памяти для продолжения работы Java Runtime Environment

Я столкнулся с этой ошибкой на своих серверах Linux.

Resource temporarily unavailable [fork] &  
insufficient memory for the Java Runtime Environment to continue

Я увеличил лимит nproc на моем сервере до 2047. И я надеюсь, что сообщение о недоступности ресурса больше не придет

Но при вводе самой java-команды выдает ошибку «Недостаточно памяти». Я пытался установить память кучи java, но это тоже не позволяло. Я не знаю, что делать дальше. Пожалуйста помоги!!

ОС - Centos 6.8
Версия Java - Jdk 1.6
Виртуализация - это LXC
на хост-сервере работают несколько виртуальных машин.
Свободная память составляет 15 ГБ на всех виртуальных машинах.

Поскольку это виртуализация LXC, у нее есть общая память для всех виртуальных машин.

Поскольку я использую контейнеры LXC, все процессы виртуальной машины происходят с хост-сервера. Таким образом, количество процессов на главном сервере было очень большим, если исключить пользователя root.

Первоначально думал, что это может быть из-за проблемы с пространством кучи Java, и я попытался увеличить пространство кучи до большего значения. Но проблема повторялась.

Я решил проблему, увеличив количество процессов для пользователя на хост-сервере.

/etc/security/limits.d/90-nproc.conf

к большой стоимости 16000.

А также я увеличил количество процессов в каждой виртуальной машине до более высокого значения 4096.

Теперь оба вопроса «Ресурс временно недоступен [вилка] и недостаточно памяти для продолжения работы Java Runtime Environment» решены. И теперь все работает нормально.