¿Qué puedo hacer si necesito más memoria de la que hay en el montón en Java?

  1. Puede aumentar el tamaño del montón. El tamaño del almacenamiento dinámico puede configurarse en un tamaño de memoria mayor que el físico de su servidor mientras se asegura de que la condición sea correcta:

    the size of heap + the size of other applications < the size of physical memory + the size of swap space
    

    Por ejemplo, si la memoria física es 4G y el espacio de intercambio es 4G, el tamaño del montón se puede configurar en 6G.

    Pero el programa sufrirá el intercambio de páginas.

  2. Puede usar alguna base de datos como Redis . Redis es una base de datos de valores clave y tiene una estructura de Lista.

    Creo que esta es la forma más sencilla de resolver su problema.

  3. Puede comprimir la instancia de Result. Primero, serializa la instancia y la comprime. Y define la clase:

    class CompressResult { 
        byte[] result; 
        //... 
    } 
    

    Y reemplace el Resultado a CompressResult. Pero debe deserializar el resultado cuando quiera usarlo.

    Funcionará bien si la clase Resultado tiene muchos campos y es muy complicada.

Respuesta 1

Intento poner una barra de desplazamiento en un marco, pero no funciona, no veo la barra de desplazamiento. Este es mi código: Popup noticePopup = new Popup ("Notice", 1500, 900); JPanel noticePanel = new JPanel (); ...

Estoy tratando de pasar datos entre 2 clases de acción. Actualmente estoy haciendo esto en mi primera clase de acción doExecute () {request.setAttribute ("Order_ID", 2); // código para buscar ...

He escrito el siguiente programa Java muy simple para pedirle al usuario que ingrese un nombre de archivo, luego informará el número de líneas de este archivo a la salida estándar: import java.io. *; import java.util. *; ...

Entonces tengo una URL que es String url = request.getRequestURL () + "?" + Request.getQueryString (); Hay un parámetro Custom = "true", que quiero eliminar antes de almacenarlo en la URL. Hay alguna ...