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

Я столкнулся с этой ошибкой на своих серверах 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, она имеет общую память для всех виртуальных машин.

0
задан 19 July 2017 в 17:05
1 ответ

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

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

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

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

до большого значения 16000 .

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

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

0
ответ дан 5 December 2019 в 07:44

Теги

Похожие вопросы