Мне нужно увеличить размер кучи Java по умолчанию, чтобы получитьOpenNMS Linkdслужба работает гладко, и, к счастью, у меня свободно 4/5 от общей установленной памяти в любой момент времени, даже когда на сервере максимальная нагрузка. Java по-прежнему не работает на полную мощность. Поэтому мне нужно увеличить размер кучи Java по умолчанию.
Кто-нибудь может мне подсказать, как это сделать?
Я использую Ubuntu 12.04 lts, общий объем установленной памяти составляет 16 ГБ, из которых обычно используется от 2 до 4 ГБ.
Я уже проверил приведенные ниже вопросы, но они не помогли мне решить мою проблему.
Как увеличить память, выделенную для Java? java.lang.OutOfMemoryError: пространство кучи Java
Сравнение размера виртуальной памяти с размером резидентной памяти
Как увеличить память, выделенную для Java? java.lang.OutOfMemoryError: пространство кучи Java
Пожалуйста, не стесняйтесь редактировать или комментировать любые необходимые дополнительные сведения.
решение1
Вы можете использовать его java -Xmx4096m
для того, чтобы установить размер кучи в 4 ГБ.
Затем вы можете добавить export _JAVA_OPTIONS=-Xmx4096m
в свою оболочку их файл (.bashrc, .zshrc).
решение2
Хмммм... Производительность Java не обязательно связана с размером кучи. Увеличивая максимальный размер, вы предотвращаете один источник ошибок нехватки памяти (есть и другие вещи, которые генерируют эту ошибку Java).
Единственная эффективность достигается за счет сокращения количества вызовов для увеличения размера стековой памяти, если вы устанавливаете предварительно выделенную кучу на максимальный размер.
Хм... Думаю, это также может немного замедлить работу сборщика мусора, поскольку ему не придется реагировать так быстро, как при меньшем размере кучи.
Обе вышеуказанные настройки размера кучи доступны в командной строке Java.