Índice

wrapper.java.maxmemory

Compatibilidad :1.0.0
Ediciones :Edición ProfesionaEdición EstándarEdición de la Comunidad
Plataformas :WindowsMac OSXLinuxIBM AIXFreeBSDHP-UXSolarisIBM z/Linux

La cantidad máxima de memoria en megabytes que la JVM podrá utilizar. El valor predeterminado es "0" (cero), lo que hará que se utilice el valor predeterminado de la JVM. Para la mayoría de las JVMs, el valor predeterminado es "64MB".

Si se especifica un valor distinto de cero para esta propiedad, se agregará un parámetro -Xmx apropiado al comando Java generado por el Wrapper. Si se especifica, la memoria inicial debe ser mayor o igual que el valor establecido para la propiedad wrapper.java.initmemory. El límite superior exacto depende de la JVM, pero para las JVMs de 32 bits, tiende a ser inferior a 2048 MB, más cercano a 1800 MB en la mayoría de los casos. Las JVM de 64 bits permiten configuraciones mucho más altas, que es una de las principales razones para usar una JVM de 64 bits.

Si esta propiedad se establece en "0" (cero), también es posible especificar el parámetro -Xmx manualmente usando la propiedad wrapper.java.additional.<n>.

Ejemplo: (64MB)
wrapper.java.maxmemory=64

Esta propiedad se proporciona para la comodidad de la mayoría de los usuarios y también permite establecer tamaños de memoria relativos como se describe en la propiedad wrapper.java.maxmemory.percent. Si necesita configuraciones de memoria más complicadas, puede hacerlo usando las propiedades wrapper.java.additional.<n> de la siguiente manera:

Ejemplo Equivalente: (3MB)
wrapper.java.additional.1=-Xmx64m

NOTA

Si una aplicación experimenta java.lang.OutOfMemoryErrors, a menudo eso indica que se debe aumentar la cantidad máxima de memoria disponible para la aplicación. Tenga en cuenta que establecer la memoria máxima en un valor mayor que la cantidad de memoria real en la máquina dará como resultado un intercambio de memoria. El intercambio de memoria es una función del sistema operativo y, por lo tanto, su rendimiento es altamente específico del sistema operativo. Sin embargo, por experiencia, esto tiende a resultar en una gran disminución en el rendimiento de la aplicación. En la mayoría de los casos, es mejor establecer la memoria máxima en un valor que se ajuste a la memoria disponible y luego confiar en la recolección de elementos no utilizados de Java.

NOTA

Recomendamos leer los siguientes enlaces, que describen en detalle cómo los valores de memoria inicial y máxima afectan el rendimiento de Java y qué se puede hacer para mejorar ese rendimiento para una aplicación determinada.

wrapper.java.maxmemory.percent

Compatibilidad :3.3.0
Ediciones :Edición ProfesionaEdición EstándarEdición de la Comunidad (No Compatible)
Plataformas :WindowsMac OSXLinuxIBM AIXFreeBSDHP-UXSolarisIBM z/Linux

At times, it is necessary to set the memory thresholds relative to the amount of physical memory available on the system. This property accepts a percentage value between 1 and 100 which will translate into a size in MBs.

For 32-bit versions of the Wrapper, the value will be calculated based on the minimum between the physical memory and 2048MB.

Example: (60%)
wrapper.java.maxmemory.percent=60

In the above example (60%), if 1GB (1024MB) of memory is installed on the system, the maximum memory will be set to 614MB (=1024 x 60%).

On 32-bit versions of the Wrapper, if the machine has 4GB of memory, then the initial memory will be 1228MB (= 2048 x 60%).

NOTA

Java behaves very poorly if the JVM has any of its memory swapped, so it is important to take the OS requirements and any other applications into account when deciding on a safe memory level.

NOTA

Since version 3.5.29 it is also possible to use the dynamic variable 'WRAPPER_SYSMEM_<P>' where <P> refers to the percentage of the physical memory available on the system.

Example: (60%)
wrapper.java.additional.1=-Xmx%WRAPPER_SYSMEM_60.0%

For details, please see the Environment Variables page.

Referencia: Memoria de Java

Referencia: Parámetros