как проверить размер кучи, выделенной для JVM linux

У меня есть apache-tomcat в качестве моего веб-сервера. Я хочу проверить, какой размер кучи выделяется для JVM linux. И откуда я могу изменить его.

4 ответов


вы можете легко проверить выделение памяти размера кучи с помощью JConsole, если у вас есть путь к вашему jre/jdk, настроенному правильно в системе, вы должны иметь возможность запустить его с помощью команды jconsole из любой точки мира.

для управления распределением памяти кучи вы можете посмотреть здесь: http://javahowto.blogspot.com/2006/06/6-common-errors-in-setting-java-heap.html


простой способ в Linux-запустить следующее:

ps-ef |grep tomcat

ищите начальную и максимальную память JVM:

-Xms1024m -Xmx4096m

в этом случае он выделяет 1G при запуске и максимум .


размер кучи, используемый Tomcat, определен в его конфигурации.

Это место, где вы можете проверить и изменить его.

Если вы не уверены в том, где эта конфигурация сохранена, я бы предложил посмотреть документацию Tomcat, где это объясняется вместе со всеми значениями конфигурации.


Если вам нужна дополнительная информация с сервера, но вы не можете войти в него интерактивно (или не имеете GUI или JMX и т. д.), Вы можете включить javamelody в вашем файле POM / libs, и он создаст страницу на хосте: 8080 / / мониторинг со всеми видами хорошей информации, включая размер кучи, статистику GC и размер permgen.

Это не безопасная вещь, чтобы оставлять запущенными в производственной среде - если вам это нужно все время, по крайней мере, заблокировать его!