Настройки памяти Tomcat для каждого веб-приложения - PullRequest
5 голосов
/ 01 декабря 2009

У меня есть два веб-приложения, работающие внутри tomcat. Пространство кучи Java выделено для Tomcat и используется совместно для обоих приложений. При этом одно приложение потребляет больше, а другое получает OUT_OF_MEMORY.

Есть ли способ установить настройки памяти для веб-приложения. Скажите 70% для одного веб-приложения и 30% для другого из общей памяти, выделенной для Tomcat.

С уважением Ганеш

Ответы [ 2 ]

7 голосов
/ 01 декабря 2009

Память определяется для каждого экземпляра JVM, поэтому, если вы используете одного кота, вы не сможете этого сделать.

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

2 голосов
/ 01 декабря 2009

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

Таким образом, единственный элемент управления - это аргументы JVM. И эти аргументы служат только для намека на JVM, где приблизительно произойдет сбой из-за нехватки памяти. Нет, это невозможно.

...