Один из способов, которым я однажды смог разрешить Java излишне выделять память, - это добавить следующее в /etc/security/limits.conf
(может отличаться для не- Debian distos) и попробуйте снова протестировать в новой оболочке входа в систему:
* soft memlock unlimited
* hard memlock unlimited
Ховвевер, маловероятно, что этот параметр действительно поможет вам. Вам, вероятно, следует получить хостинг с более высоким ресурсом privvmpages
.
Stephen,
Set _JAVA_OPTIONS prior to running the apt-get routines, by running the following at the command line:
export _JAVA_OPTIONS = "- Xms128m -Xmx512m"
Вы должны включить подчеркивание и установить -Xmx примерно на 80% доступной ОЗУ, а -Xms на значение ниже -Xmx.
В случае, если вы по-прежнему возникают проблемы, особенно с зависанием, убедитесь, что в вашей среде есть доступ как минимум к двум ядрам ЦП; java плохо работает с одним ядром процессора. Изнутри вашего контейнера вы можете запустить команду:
cat / proc / cpuinfo
Вы также можете дважды проверить, что ваша система использует правильную версию java для java, javac, javaws и jexec ...
sudo update-alternatives --get-selections | egrep 'jvm|jdk|jre|java'
Что ж, столбец failcnt
вашего / proc / user_beancounters
содержит только нули, поэтому я полагаю, что проблема не связана с выделением памяти. Я думаю, вам следует попробовать загрузить пакет локально с помощью wget
и отладить процесс установки с помощью dpkg --debug = 3773
. Я попытался установить ca-Certific-java
в своей системе и обнаружил, что ca-Certific-java
и openjdk-6-jre
не могут быть установлены друг без друга. Если в вашей системе уже установлена Java-машина, я думаю, это не должна быть реализация OpenJDK. Как тогда вы установили JVM? Возможно, корень проблемы в другой JVM.
Я использую Ubuntu 10.04.1 LTS, работающую в openvz. Некоторое время работал на 1 ядре 256 МБ, но никогда не мог заставить Java работать с этой конфигурацией. Никогда не обращал на это внимания, пока мне не понадобилось запускать на нем java-приложения, и я решил изучить его. Не удалось установить ca-сертификаты-java. Это не сработает с open-jdk, default-jdk или при отдельном запуске. Сосредоточен на процессе выделения оперативной памяти при запуске jvm и просто увеличил оперативную память с шагом до 1 ГБ, внезапно сработала apt-get install ca-Certific-java и различные другие установки, включая openjdk-6. После успешного запуска обновлений и установки я попытался сбросить оперативную память на меньшее значение и обнаружил, что jvm принимает как минимум 768 МБ оперативной памяти, независимо от того, какой флаг -Xmx установлен. Все же лучше 1гб. Я также попытался увеличить количество ядер, но это не имело никакого значения в отличие от того, что кто-то сказал выше.